Patents by Inventor Noam Bloch

Noam Bloch 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: 20190379714
    Abstract: A method including configuring a transmit process to store information including a queue of packets to be transmitted, the queue defining transmit process packets to be transmitted, each packet associated with a transmission time, and configuring a synchronization process to receive from the transmit process at least some of the information. The synchronization process performs one of: A) accessing a dummy send queue and a completion queue, and transmitting one or more of the transmit process packets in accordance with a completion queue entry in the completion queue, and B) sends a doorbell to transmission hardware at a time when at least one of the transmit process packets is to be transmitted, the synchronization process including a master queue configured to store transmission entries, each transmission entry including a transmit process indicator and an indication of transmit process packets to be transmitted. Related apparatus and methods are also described.
    Type: Application
    Filed: June 4, 2019
    Publication date: December 12, 2019
    Inventors: Dotan David Levi, Alex Vainman, Natan Manevich, Nir Nitzani, Ilan Smith, Richard Hastie, Noam Bloch, Lior Narkis, Rafi Weiner
  • Patent number: 10505677
    Abstract: A network element processes a data flow in accordance with a communications protocol in which respective incremental sequence numbers are assigned to segments of the data flow. The segments are sent from the network element to the other network element in order of the sequence numbers, and respective acknowledgements are received from the other network element. The acknowledgements may include the highest sequence number of the segments of the flow that were received in the other network element. After transmitting the last segment of the data flow an additional segment is sent to the other network element. When it is determined from an acknowledgement of the additional segment that the last segment of the data flow was not received by the other network element, the last segment is retransmitted.
    Type: Grant
    Filed: October 29, 2017
    Date of Patent: December 10, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Alexander Shpiner, Adi Menachem, Eitan Zahavi, Noam Bloch, Ariel Shahar
  • 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
  • Patent number: 10454991
    Abstract: A network interface device includes a host interface for connection to a host processor and a network interface, which is configured to transmit and receive data packets over a network, and which comprises multiple distinct physical ports configured for connection to the network. Processing circuitry is configured to receive, via one of the physical ports, a data packet from the network and to decide, responsively to a destination identifier in the packet, whether to deliver a payload of the data packet to the host processor via the host interface or to forward the data packet to the network via another one of the physical ports.
    Type: Grant
    Filed: March 16, 2015
    Date of Patent: October 22, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Noam Bloch, Ariel Shachar, Michael Kagan, Lior Narkis, Shlomo Raikin
  • Patent number: 10430374
    Abstract: A method for data transfer includes transmitting a sequence of data packets, including at least a first packet and a second packet transmitted subsequently to the first packet, from a first computer over a network to a second computer in a single remote direct memory access (RDMA) data transfer transaction. Upon receipt of the second packet at the second computer without previously having received the first packet, a negative acknowledgment (NAK) packet is sent from the second computer over the network to the first computer, indicating that the first packet was not received. In response to the NAK packet, the first packet is retransmitted from the first computer to the second computer without retransmitting the second packet.
    Type: Grant
    Filed: June 29, 2016
    Date of Patent: October 1, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Adi Menachem, Ariel Shahar, Noam Bloch, Diego Crupnicoff, Michael Kagan
  • 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
  • Patent number: 10324513
    Abstract: A method for processing data includes receiving in a peripheral device, which is connected by a bus to a host processor having host resources, a notification of a sleep state of at least one of the host resources. While the at least one of the host resources is in the sleep state, when the peripheral device receives data from a data source for delivery to the host processor, the peripheral device sends a message to the data source, which causes the data source to defer conveying further data to the peripheral device until the at least one of the host resources has awakened from the sleep state.
    Type: Grant
    Filed: August 27, 2015
    Date of Patent: June 18, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Idan Burstein, Shlomo Raikin, Noam Bloch, Lavi Koch
  • Patent number: 10305772
    Abstract: A method for communication includes receiving multiple work requests from a process running on a computer to transmit respective messages over a network. A single work item corresponding to the multiple work requests is submitted to a network interface controller (NIC) connected to the computer. In response to the single work item, multiple data packets carrying the respective messages are transmitted from the NIC to the network.
    Type: Grant
    Filed: March 23, 2016
    Date of Patent: May 28, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Itay Zur, Noam Bloch, Ariel Shahar, Dotan Finkelstein
  • 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: 20190140979
    Abstract: A network interface controller that is connected to a host and a packet communications network. The network interface controller includes electrical circuitry configured as a packet processing pipeline with a plurality of stages. It is determined in the network interface controller that at least a portion of the stages of the pipeline are acceleration-defined stages. Packets are processed in the pipeline by transmitting data to an accelerator from the acceleration-defined stages, performing respective acceleration tasks on the transmitted data in the accelerator, and returning processed data from the accelerator to receiving stages of the pipeline.
    Type: Application
    Filed: June 20, 2018
    Publication date: May 9, 2019
    Inventors: Dotan Levi, Liran Liss, Haggai Eran, Noam Bloch, Idan Burstein, Lior Narkis, Avraham Ganor
  • Publication number: 20190132085
    Abstract: A network element processes a data flow in accordance with a communications protocol in which respective incremental sequence numbers are assigned to segments of the data flow. The segments are sent from the network element to the other network element in order of the sequence numbers, and respective acknowledgements are received from the other network element. The acknowledgements may include the highest sequence number of the segments of the flow that were received in the other network element. After transmitting the last segment of the data flow an additional segment is sent to the other network element. When it is determined from an acknowledgement of the additional segment that the last segment of the data flow was not received by the other network element, the last segment is retransmitted.
    Type: Application
    Filed: October 29, 2017
    Publication date: May 2, 2019
    Inventors: Alexander Shpiner, Adi Menachem, Eitan Zahavi, Noam Bloch, Ariel Shahar
  • Patent number: 10237376
    Abstract: A method for congestion control includes receiving at a destination computer a packet transmitted on a given flow, in accordance with a predefined transport protocol, through a network by a transmitting network interface controller (NIC) of a source computer, and marked by an element in the network with a forward congestion notification. Upon receiving the marked packet in a receiving NIC of the destination computer, a congestion notification packet (CNP) indicating a flow to be throttled is immediately queued for transmission from the receiving NIC through the network to the source computer. Upon receiving the CNP in the transmitting NIC, transmission of further packets on at least the flow indicated by the CNP from the transmitting NIC to the network is immediately throttled, and an indication of the given flow is passed from the transmitting NIC to a protocol processing software stack running on the source computer.
    Type: Grant
    Filed: September 28, 2016
    Date of Patent: March 19, 2019
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Diego Crupnicoff, Michael Kagan, Noam Bloch, Adi Menachem, Idan Burstein
  • 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
  • Patent number: 10164905
    Abstract: A Network Interface Controller (NIC) includes a network interface, a peer interface and steering logic. The network interface is configured to receive incoming packets from a communication network. The peer interface is configured to communicate with a peer NIC not via the communication network. The steering logic is configured to classify the packets received over the network interface into first incoming packets that are destined to a local Central Processing Unit (CPU) served by the NIC, and second incoming packets that are destined to a remote CPU served by the peer NIC, to forward the first incoming packets to the local CPU, and to forward the second incoming packets to the peer NIC over the peer interface not via the communication network.
    Type: Grant
    Filed: January 29, 2015
    Date of Patent: December 25, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Ofer Hayut, Noam Bloch, Shlomo Raikin, Liran Liss
  • Patent number: 10158702
    Abstract: A Network Interface (NI) includes a host interface, which is configured to receive from a host processor of a node one or more work requests that are derived from an operation to be executed by the node. The NI maintains a plurality of work queues for carrying out transport channels to one or more peer nodes over a network. The NI further includes control circuitry, which is configured to accept the work requests via the host interface, and to execute the work requests using the work queues by controlling an advance of at least a given work queue according to an advancing condition, which depends on a completion status of one or more other work queues, so as to carry out the operation.
    Type: Grant
    Filed: November 11, 2015
    Date of Patent: December 18, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Noam Bloch, Gil Bloch, Ariel Shahar, Hillel Chapman, Gilad Shainer, Adi Menachem, Ofer Hayut
  • Patent number: 10148746
    Abstract: A network adapter includes one or more ports and circuitry. The ports are configured to connect to a switch in a communication network. The circuitry is coupled to a network node that includes multiple hosts, and is configured to exchange management packets between a control server and multiple BMC units associated respectively with the multiple hosts, and to exchange, over the communication network via the one or more ports, data packets between the hosts and one or more remote nodes.
    Type: Grant
    Filed: December 25, 2014
    Date of Patent: December 4, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Yuval Itkin, Noam Bloch, Dror Goldenberg
  • Patent number: 10120832
    Abstract: A method includes communicating between at least first and second devices over a bus in accordance with a bus address space, including providing direct access over the bus to a local address space of the first device by mapping at least some of the addresses of the local address space to the bus address space. In response to indicating, by the first device or the second device, that the second device requires to access a local address in the local address space that is not currently mapped to the bus address space, the local address is mapped to the bus address space, and the local address is accessed directly, by the second device, using the mapping.
    Type: Grant
    Filed: May 26, 2015
    Date of Patent: November 6, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Shachar Raindel, Idan Burstein, Noam Bloch, Shlomo Raikin
  • 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
  • Patent number: 10082858
    Abstract: A method for processing data includes receiving in a peripheral device, which is connected by a bus to a host processor having multiple host resources, information regarding respective power states of the host resources. The data are selectively directed from the peripheral device to the host resources responsively to the respective power states.
    Type: Grant
    Filed: June 22, 2015
    Date of Patent: September 25, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Idan Burstein, Shlomo Raikin, Noam Bloch