Patents by Inventor Dror Bohrer

Dror Bohrer 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).

  • Publication number: 20230342214
    Abstract: Systems, apparatus, articles of manufacture, and methods are disclosed for a remote processing acceleration engine. Disclosed is an infrastructure processing unit (IPU) comprising an offload engine driver to access a remote procedure call (RPC) from business logic circuitry, network interface circuitry, and RPC offload circuitry to select a destination to perform an operation associated with the RPC call, the destination selected based on an ability of the destination to perform the operation using remote direct memory access (RDMA), and cause communication of the operation to the destination via the network interface circuitry.
    Type: Application
    Filed: June 30, 2023
    Publication date: October 26, 2023
    Inventors: Thomas E. Willis, Vered Bar Bracha, Dinesh Kumar, David Anderson, Dror Bohrer, Stephen Ibanez, Salma Johnson, Brad Burres
  • Patent number: 11088966
    Abstract: A network adapter includes a host interface and circuitry. The host interface is configured to connect locally between the network adapter and a host via a bus. The circuitry is configured to receive from one or more source nodes, over a communication network to which the network adapter is coupled, multiple packets destined to the host, and temporarily store the received packets in a queue of the network adapter, to send the stored packets from the queue to the host over the bus, to monitor a performance attribute of the bus, and in response to detecting, based at least on the monitored performance attribute, an imminent overfilling state of the queue, send a congestion notification to at least one of the source nodes from which the received packets originated.
    Type: Grant
    Filed: November 4, 2019
    Date of Patent: August 10, 2021
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Adi Menachem, Alex Shpiner, Noam Bloch, Eitan Zahavi, Idan Burstein, Dror Bohrer, Roee Moyal
  • Patent number: 10887252
    Abstract: A network interface device is connected to a host computer by having a memory controller, and a scatter-gather offload engine linked to the memory controller. The network interface device prepares a descriptor including a plurality of specified memory locations in the host computer, incorporates the descriptor in exactly one upload packet, transmits the upload packet to the scatter-gather offload engine via the uplink, invokes the scatter-gather offload engine to perform memory access operations cooperatively with the memory controller at the specified memory locations of the descriptor, and accepts results of the memory access operations.
    Type: Grant
    Filed: November 6, 2018
    Date of Patent: January 5, 2021
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Dror Bohrer, Noam Bloch, Peter Paneah, Richard Graham
  • Patent number: 10826784
    Abstract: A method includes, in a Network Interface Controller (NIC) that communicates over a network, generating indications pertaining to a performance of the NIC. The indications are classified with respect to severity. At least some of the indications, for which the severity exceeds a predefined severity threshold, are assembled in performance notification packets. The performance notification packets are sent over the network.
    Type: Grant
    Filed: January 13, 2019
    Date of Patent: November 3, 2020
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Shahar Sarfaty, Dror Bohrer, Eitan Zahavi
  • Publication number: 20200145349
    Abstract: A network adapter includes a host interface and circuitry. The host interface is configured to connect locally between the network adapter and a host via a bus. The circuitry is configured to receive from one or more source nodes, over a communication network to which the network adapter is coupled, multiple packets destined to the host, and temporarily store the received packets in a queue of the network adapter, to send the stored packets from the queue to the host over the bus, to monitor a performance attribute of the bus, and in response to detecting, based at least on the monitored performance attribute, an imminent overfilling state of the queue, send a congestion notification to at least one of the source nodes from which the received packets originated.
    Type: Application
    Filed: November 4, 2019
    Publication date: May 7, 2020
    Inventors: Adi Menachem, Alex Shpiner, Noam Bloch, Eitan Zahavi, Idan Burstein, Dror Bohrer, Roee Moyal
  • Patent number: 10642775
    Abstract: A computer peripheral device includes a host interface, which is configured to communicate over a bus with a host processor and with a system memory of the host processor. Processing circuitry in the peripheral device is configured to receive and execute work items submitted to the peripheral device by client processes running on the host processor, and responsively to completing execution of the work items, to write completion reports to the system memory, including first completion reports of a first data size and second completion reports of a second data size, which is smaller than the first data size.
    Type: Grant
    Filed: June 30, 2019
    Date of Patent: May 5, 2020
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Igor Voks, Dror Bohrer, Lior Narkis, Ariel Shahar
  • Patent number: 10572400
    Abstract: A packet processing device CPU, including multiple processing cores. A NIC, which is coupled to the CPU, includes at least one network port, receives a flow of incoming data packets in a sequential order from a packet communication network, and receive logic, which delivers the incoming data packets in the flow to a designated group of the cores for processing by the cores in the group, while distributing the incoming data packets to the cores in alternation among the cores in the group. In response to the incoming data packets, the cores in the group generate corresponding outgoing data packets and queue the outgoing data packets for transmission by the NIC in the sequential order of the incoming data packets. Transmit logic in the NIC transmits the outgoing data packets to the network in the sequential order via the at least one network port.
    Type: Grant
    Filed: June 15, 2017
    Date of Patent: February 25, 2020
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Dotan Finkelstein, Lior Narkis, Dror Bohrer, Roee Moyal
  • Patent number: 10462060
    Abstract: Packet flows received in a data network are assigned to respective entries of a database. During an accumulation interval byte counts of the assigned packet flows are accumulated in the respective database entries. The packet flows are classified as elephant flows when differences between the byte counts and a reference byte count exceed a threshold and are reported after expiration of the accumulation interval.
    Type: Grant
    Filed: February 14, 2018
    Date of Patent: October 29, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Jacob Ruthstein, David Mozes, Dror Bohrer, Ariel Shahar, Lior Narkis, Noam Bloch
  • Publication number: 20190253362
    Abstract: Packet flows received in a data network are assigned to respective entries of a database. During an accumulation interval byte counts of the assigned packet flows are accumulated in the respective database entries. The packet flows are classified as elephant flows when differences between the byte counts and a reference byte count exceed a threshold and are reported after expiration of the accumulation interval.
    Type: Application
    Filed: February 14, 2018
    Publication date: August 15, 2019
    Inventors: Jacob Ruthstein, David Mozes, Dror Bohrer, Ariel Shahar, Lior Narkis, Noam Bloch
  • Patent number: 10382350
    Abstract: Network interface apparatus includes a host interface and a network interface, which receives packets in multiple packet flows destined for one or more virtual machines running on a host processor. Packet processing circuitry receives a first instruction from the host processor to offload preprocessing of the data packets in a specified flow in accordance with a specified rule, and initiates preprocessing of the data packets while writing one or more initial data packets from the specified flow to a temporary buffer. Upon subsequently receiving a second instruction to enable the specified rule, the initial data packets are delivered from the temporary buffer, after preprocessing by the packet processing circuitry, directly to a virtual machine to which the specified flow is destined, followed by preprocessing and delivery of subsequent data packets in the specified flow to the virtual machine.
    Type: Grant
    Filed: September 12, 2017
    Date of Patent: August 13, 2019
    Assignee: Mellanox Technologies, Ltd.
    Inventors: Dror Bohrer, Noam Bloch, Lior Narkis, Hillel Chapman, Gilad Hammer
  • Publication number: 20190229999
    Abstract: A method includes, in a Network Interface Controller (NIC) that communicates over a network, generating indications pertaining to a performance of the NIC. The indications are classified with respect to severity. At least some of the indications, for which the severity exceeds a predefined severity threshold, are assembled in performance notification packets. The performance notification packets are sent over the network.
    Type: Application
    Filed: January 13, 2019
    Publication date: July 25, 2019
    Inventors: Shahar Sarfaty, Dror Bohrer, Eitan Zahavi
  • Publication number: 20190149486
    Abstract: A network interface device is connected to a host computer by having a memory controller, and a scatter-gather offload engine linked to the memory controller. The network interface device prepares a descriptor including a plurality of specified memory locations in the host computer, incorporates the descriptor in exactly one upload packet, transmits the upload packet to the scatter-gather offload engine via the uplink, invokes the scatter-gather offload engine to perform memory access operations cooperatively with the memory controller at the specified memory locations of the descriptor, and accepts results of the memory access operations.
    Type: Application
    Filed: November 6, 2018
    Publication date: May 16, 2019
    Inventors: Dror Bohrer, Noam Bloch, Peter Paneah, Richard Graham
  • Publication number: 20190081904
    Abstract: Network interface apparatus includes a host interface and a network interface, which receives packets in multiple packet flows destined for one or more virtual machines running on a host processor. Packet processing circuitry receives a first instruction from the host processor to offload preprocessing of the data packets in a specified flow in accordance with a specified rule, and initiates preprocessing of the data packets while writing one or more initial data packets from the specified flow to a temporary buffer. Upon subsequently receiving a second instruction to enable the specified rule, the initial data packets are delivered from the temporary buffer, after preprocessing by the packet processing circuitry, directly to a virtual machine to which the specified flow is destined, followed by preprocessing and delivery of subsequent data packets in the specified flow to the virtual machine.
    Type: Application
    Filed: September 12, 2017
    Publication date: March 14, 2019
    Inventors: Dror Bohrer, Noam Bloch, Lior Narkis, Hillel Chapman, Gilad Hammer
  • Publication number: 20180365176
    Abstract: A packet processing device CPU, including multiple processing cores. A NIC, which is coupled to the CPU, includes at least one network port, receives a flow of incoming data packets in a sequential order from a packet communication network, and receive logic, which delivers the incoming data packets in the flow to a designated group of the cores for processing by the cores in the group, while distributing the incoming data packets to the cores in alternation among the cores in the group. In response to the incoming data packets, the cores in the group generate corresponding outgoing data packets and queue the outgoing data packets for transmission by the NIC in the sequential order of the incoming data packets. Transmit logic in the NIC transmits the outgoing data packets to the network in the sequential order via the at least one network port.
    Type: Application
    Filed: June 15, 2017
    Publication date: December 20, 2018
    Inventors: Dotan Finkelstein, Lior Narkis, Dror Bohrer, Roee Moyal
  • Patent number: 10110518
    Abstract: A method for communication includes receiving at a receiving node over a network from a sending node a succession of data packets belonging to a sequence of transactions, including at least one or more first packets belonging to a first transaction and one or more second packets belonging to a second transaction executed by the sending node after the first transaction, wherein at least one of the second packets is received at the receiving node before at least one of the first packets. At the receiving node, upon receipt of the data packets, data are written from the data packets in the succession to respective locations in a buffer. Execution of the second transaction at the receiving node is delayed until all of the first packets have been received and the first transaction has been executed at the receiving node.
    Type: Grant
    Filed: December 18, 2013
    Date of Patent: October 23, 2018
    Assignee: Mellanox Technologies, Ltd.
    Inventors: Idan Burstein, Michael Kagan, Noam Bloch, Ariel Shachar, Hillel Chapman, Dror Bohrer, Diego Crupnicoff
  • Publication number: 20150172226
    Abstract: A method for communication includes receiving at a receiving node over a network from a sending node a succession of data packets belonging to a sequence of transactions, including at least one or more first packets belonging to a first transaction and one or more second packets belonging to a second transaction executed by the sending node after the first transaction, wherein at least one of the second packets is received at the receiving node before at least one of the first packets. At the receiving node, upon receipt of the data packets, data are written from the data packets in the succession to respective locations in a buffer. Execution of the second transaction at the receiving node is delayed until all of the first packets have been received and the first transaction has been executed at the receiving node.
    Type: Application
    Filed: December 18, 2013
    Publication date: June 18, 2015
    Applicant: Mellanox Technologies Ltd.
    Inventors: Idan Borshteen, Michael Kagan, Noam Bloch, Ariel Shachar, Hillel Chapman, Dror Bohrer, Diego Crupnicoff
  • Patent number: 8365057
    Abstract: A network communication device includes a host interface, which is coupled to communicate with a host processor, having a memory, so as to receive a work request to convey one or more data blocks over a network. The work request specifies a memory region of a given data size, and at least one data integrity field (DIF), having a given field size, is associated with the data blocks. Network interface circuitry is configured to execute an input/output (I/O) data transfer operation responsively to the work request so as to transfer to or from the memory a quantity of data that differs from the data size of the memory region by a multiple of the field size, while adding the at least one DIF to the transferred data or removing the at least one DIF from the transferred data.
    Type: Grant
    Filed: July 30, 2009
    Date of Patent: January 29, 2013
    Assignee: Mellanox Technologies Ltd
    Inventors: Dror Goldenberg, Hillel Chapman, Achiad Shochat, Peter Paneah, Tamir Azarzar, Dror Bohrer, Michael Kagan
  • Publication number: 20110029847
    Abstract: A network communication device includes a host interface, which is coupled to communicate with a host processor, having a memory, so as to receive a work request to convey one or more data blocks over a network. The work request specifies a memory region of a given data size, and at least one data integrity field (DIF), having a given field size, is associated with the data blocks. Network interface circuitry is configured to execute an input/output (I/O) data transfer operation responsively to the work request so as to transfer to or from the memory a quantity of data that differs from the data size of the memory region by a multiple of the field size, while adding the at least one DIF to the transferred data or removing the at least one DIF from the transferred data.
    Type: Application
    Filed: July 30, 2009
    Publication date: February 3, 2011
    Applicant: MELLANOX TECHNOLOGIES LTD
    Inventors: Dror Goldenberg, Hillel Chapman, Achiad Shochat, Peter Paneah, Tamir Azarzar, Dror Bohrer, Michael Kagan
  • Publication number: 20040218623
    Abstract: A network interface adapter includes a memory interface, for coupling to a memory containing a first data packet composed in accordance with a first communication protocol, and a network interface, for coupling to a packet communication network. Packet processing circuitry in the adapter reads the first data packet from the memory via the memory interface, computes a checksum of the first data packet, inserts the checksum in the first data packet in accordance with the first communication protocol, and encapsulates the first data packet in a payload of a second data packet in accordance with a second communication protocol applicable to the packet communication network, so as to transmit the second data packet over the network via the network interface. The circuitry likewise computes checksums of incoming encapsulated data packets from the network.
    Type: Application
    Filed: May 1, 2003
    Publication date: November 4, 2004
    Inventors: Dror Goldenberg, Michael Kagan, Benny Koren, Gil Stoler, Peter Paneah, Roi Rachamim, Gilad Shainer, Rony Gutierrez, Sagi Rotem, Dror Bohrer