Patents by Inventor Ariel Shahar

Ariel Shahar 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: 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: 20190289065
    Abstract: A method for communication includes receiving in a computer system a request from a peer computer system. Upon finding that the computer system is currently not ready to process the request, a Negative Acknowledgement (NAK) message is sent from the computer system to the peer computer system, at a sending time that is derived from a time at which the computer system is ready to process the request.
    Type: Application
    Filed: March 19, 2018
    Publication date: September 19, 2019
    Inventors: Ariel Shahar, Shahaf Shuler, Lion Levi
  • Patent number: 10394747
    Abstract: A computing system comprises one or more cores. Each core comprises a processor. In some implementations, each processor is coupled to a communication network among the cores. In some implementations, a switch in each core includes switching circuitry to forward data received over data paths from other cores to the processor and to switches of other cores, and to forward data received from the processor to switches of other cores. Also disclosed are techniques for implementing hierarchical serial interconnects such as a PCI Express switch topology over a coherent mesh interconnect.
    Type: Grant
    Filed: May 31, 2017
    Date of Patent: August 27, 2019
    Assignee: Mellanox Technologies Ltd.
    Inventors: Peter Paneah, Carl G. Ramey, Gil Moran, Adi Menachem, Christopher J. Jackson, Ilan Pardo, Ariel Shahar, Tzuriel Katoa
  • 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
  • Publication number: 20190171612
    Abstract: A network adapter includes a network interface that communicates packets over a network, a host interface connected locally to a host processor and to a host memory, and processing circuitry, coupled between the network interface and the host interface, and is configured to receive in a common queue, via the host interface, (i) a processing work item specifying a source buffer in the host memory, a data processing operation, and a first address in the host memory, and (ii) an RDMA write work item specifying the first address, and a second address in a remote memory. In response to the processing work item, the processing circuitry reads data from the source buffer, applies the data processing operation, and stores the processed data in the first address. In response to the RDMA write work item the processing circuitry transmits the processed data, over the network, for storage in the second address.
    Type: Application
    Filed: December 19, 2018
    Publication date: June 6, 2019
    Inventors: Ariel Shahar, Roee Moyal, Ali Ayoub, Michael Kegan
  • 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: 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: 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: 10148581
    Abstract: A method for communication includes establishing, using an end-to-end reliable transport context, a channel for exchange of data packets over a network between a first network interface controller (NIC) of a first computing node on the network and a second NIC of a second computing node on the network. The first NIC accepts first and second work items for execution on behalf of different, first and second sender processes, respectively, that are running on the first computing node. The first and second work items are executed by transmitting over the network from the first NIC to the second NIC, using the end-to-end reliable transport context, first and second messages directed to different, first and second receiver process running on the second computing node, using the same end-to-end reliable transport context. The second message is sent before receiving from the second NIC any acknowledgment of the first message.
    Type: Grant
    Filed: May 30, 2016
    Date of Patent: December 4, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Ariel Shahar, Hillel Chapman
  • Patent number: 10015090
    Abstract: A method for steering packets includes receiving a packet and determining parameters to be used in steering the packet to a specific destination, in one or more initial steering stages, based on one or more packet specific attributes. The method further includes determining an identity of the specific destination of the packet in one or more subsequent steering stages, governed by the parameters determined in the one or more initial stages and one or more packet specific attributes, and forwarding the packet to the determined specific destination.
    Type: Grant
    Filed: May 4, 2016
    Date of Patent: July 3, 2018
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Nir Haim Arad, Noam Bloch, Ariel Shahar, Hillel Chapman, Amir Wated
  • Patent number: 9996498
    Abstract: Communication apparatus includes a host interface for connection, via a host bus, to a host processor and a host memory, which is mapped to an address space of the host bus, and a network interface, configured to transmit and receive packets over a network. A local memory is configured to hold data in a memory space that is not mapped to the address space of the host bus. Packet processing circuitry, which is connected between the host interface and the network interface and is connected to the local memory, is configured to receive from the network interface a packet carrying a remote direct memory access (RDMA) request that is directed to an address in the local memory, and to service the RDMA request by accessing the data in the local memory.
    Type: Grant
    Filed: September 8, 2015
    Date of Patent: June 12, 2018
    Assignee: Mellanox Technologies, Ltd.
    Inventors: Ariel Shahar, Maria Lubeznov
  • Publication number: 20180004705
    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: Application
    Filed: June 29, 2016
    Publication date: January 4, 2018
    Inventors: Adi Menachem, Ariel Shahar, Noam Bloch, Diego Crupnicoff, Michael Kagan
  • Publication number: 20170346742
    Abstract: A method for communication includes establishing, using an end-to-end reliable transport context, a channel for exchange of data packets over a network between a first network interface controller (NIC) of a first computing node on the network and a second NIC of a second computing node on the network. The first NIC accepts first and second work items for execution on behalf of different, first and second sender processes, respectively, that are running on the first computing node. The first and second work items are executed by transmitting over the network from the first NIC to the second NIC, using the end-to-end reliable transport context, first and second messages directed to different, first and second receiver process running on the second computing node, using the same end-to-end reliable transport context. The second message is sent before receiving from the second NIC any acknowledgment of the first message.
    Type: Application
    Filed: May 30, 2016
    Publication date: November 30, 2017
    Inventors: Ariel Shahar, Hillel Chapman
  • Patent number: 9742855
    Abstract: A method for communication includes posting, by a software process, a set of buffers in a memory of a host processor and creating in the memory a list of labels associated respectively with the buffers. The software process pushes a first part of the list to a network interface controller (NIC), while retaining a second part of the list in the memory under control of the software process. Upon receiving a message containing a label, sent over a network, the NIC compares the label to the labels in the first part of the list and, upon finding a match to the label, writes data conveyed by the message to a buffer in the memory. Upon a failure to find the match in the first part of the list, the NIC passes the message from the NIC to the software process for handling using the second part of the list.
    Type: Grant
    Filed: August 25, 2015
    Date of Patent: August 22, 2017
    Assignee: MELLANOX TECHNOLOGIES, LTD.
    Inventors: Shahaf Shuler, Noam Bloch, Ofer Hayut, Richard Graham, Ariel Shahar, Yossef Itigin
  • Publication number: 20170068640
    Abstract: Communication apparatus includes a host interface for connection, via a host bus, to a host processor and a host memory, which is mapped to an address space of the host bus, and a network interface, configured to transmit and receive packets over a network. A local memory is configured to hold data in a memory space that is not mapped to the address space of the host bus. Packet processing circuitry, which is connected between the host interface and the network interface and is connected to the local memory, is configured to receive from the network interface a packet carrying a remote direct memory access (RDMA) request that is directed to an address in the local memory, and to service the RDMA request by accessing the data in the local memory.
    Type: Application
    Filed: September 8, 2015
    Publication date: March 9, 2017
    Inventors: Ariel Shahar, Maria Lubeznov
  • Publication number: 20160294926
    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: Application
    Filed: March 23, 2016
    Publication date: October 6, 2016
    Inventors: Itay Zur, Noam Bloch, Ariel Shahar, Dotan Finkelstein
  • Publication number: 20160248671
    Abstract: A method for steering packets includes receiving a packet and determining parameters to be used in steering the packet to a specific destination, in one or more initial steering stages, based on one or more packet specific attributes. The method further includes determining an identity of the specific destination of the packet in one or more subsequent steering stages, governed by the parameters determined in the one or more initial stages and one or more packet specific attributes, and forwarding the packet to the determined specific destination.
    Type: Application
    Filed: May 4, 2016
    Publication date: August 25, 2016
    Inventors: Nir Haim Arad, Noam Bloch, Ariel Shahar, Hillel Chapman, Amir Wated
  • Patent number: 9397960
    Abstract: A method for steering packets, including receiving a packet and determining parameters to be used in steering the packet to a specific destination, in one or more initial steering stages, based on one or more packet specific attributes. The method further includes determining an identity of the specific destination of the packet in one or more subsequent steering stages, governed by the parameters determined in the one or more initial stages and one or more packet specific attributes, and forwarding the packet to the determined specific destination.
    Type: Grant
    Filed: November 8, 2011
    Date of Patent: July 19, 2016
    Assignee: MELLANOX TECHNOLOGIES LTD.
    Inventors: Nir Haim Arad, Noam Bloch, Ariel Shahar, Hillel Chapman, Amir Wated
  • Publication number: 20160072906
    Abstract: A method for communication includes posting, by a software process, a set of buffers in a memory of a host processor and creating in the memory a list of labels associated respectively with the buffers. The software process pushes a first part of the list to a network interface controller (NIC), while retaining a second part of the list in the memory under control of the software process. Upon receiving a message containing a label, sent over a network, the NIC compares the label to the labels in the first part of the list and, upon finding a match to the label, writes data conveyed by the message to a buffer in the memory. Upon a failure to find the match in the first part of the list, the NIC passes the message from the NIC to the software process for handling using the second part of the list.
    Type: Application
    Filed: August 25, 2015
    Publication date: March 10, 2016
    Inventors: Shahaf Shuler, Noam Bloch, Ofer Hayut, Richard Graham, Ariel Shahar
  • Publication number: 20160065659
    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: Application
    Filed: November 11, 2015
    Publication date: March 3, 2016
    Inventors: Noam Bloch, Gil Bloch, Ariel Shahar, Hillel Chapman, Gilad Shainer, Adi Menachem, Ofer Hayut