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: 20150180959Abstract: A network interface device includes a host interface for connection to a host processor having a memory. A network interface is configured to transmit and receive data packets over a data network, which supports multiple tenant networks overlaid on the data network. Processing circuitry is configured to receive, via the host interface, a work item submitted by a virtual machine running on the host processor, and to identify, responsively to the work item, a tenant network over which the virtual machine is authorized to communicate, wherein the work item specifies a message to be sent to a tenant destination address. The processing circuitry generates, in response to the work item, a data packet containing an encapsulation header that is associated with the tenant network, and to transmit the data packet over the data network to at least one data network address corresponding to the specified tenant destination address.Type: ApplicationFiled: March 4, 2015Publication date: June 25, 2015Inventors: Noam Bloch, Eitan Hirshberg, Michael Kagan, Lior Narkis
-
Publication number: 20150172226Abstract: 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: ApplicationFiled: December 18, 2013Publication date: June 18, 2015Applicant: Mellanox Technologies Ltd.Inventors: Idan Borshteen, Michael Kagan, Noam Bloch, Ariel Shachar, Hillel Chapman, Dror Bohrer, Diego Crupnicoff
-
Patent number: 9031086Abstract: A method for communication, includes allocating, in a network interface controller (NIC) a single dynamically-connected (DC) initiator context for serving requests from an initiator process running on the initiator host to transmit data to multiple target processes running on one or more target nodes. The NIC transmits a first connect packet directed to a first target process and referencing the DC initiator context so as to open a first dynamic connection with the first target process. The NIC receives over the packet network, in response to the first connect packet, a first acknowledgment packet containing a first session identifier (ID). Following receipt of the first acknowledgment packet, the NIC transmits one or more first data packets containing the first session ID over the first dynamic connection from the NIC to the first target process. Dynamic connections with other target processes may subsequently be handled in similar fashion.Type: GrantFiled: May 15, 2014Date of Patent: May 12, 2015Assignee: Mellanox Technologies Ltd.Inventors: Ariel Shachar, Michael Kagan, Noam Bloch
-
Patent number: 9008097Abstract: A network interface device includes a host interface for connection to a host processor having a memory. A network interface is configured to transmit and receive data packets over a data network, which supports multiple tenant networks overlaid on the data network. Processing circuitry is configured to receive, via the host interface, a work item submitted by a virtual machine running on the host processor, and to identify, responsively to the work item, a tenant network over which the virtual machine is authorized to communicate, wherein the work item specifies a message to be sent to a tenant destination address. The processing circuitry generates, in response to the work item, a data packet containing an encapsulation header that is associated with the tenant network, and to transmit the data packet over the data network to at least one data network address corresponding to the specified tenant destination address.Type: GrantFiled: December 31, 2012Date of Patent: April 14, 2015Assignee: Mellanox Technologies Ltd.Inventors: Noam Bloch, Eitan Hirshberg, Michael Kagan
-
Patent number: 8990472Abstract: Methods and devices for running network protocols over Peripheral Component Interconnect Express are disclosed. The methods and devices may receive an electronic signal comprising data. The methods and devices may also determine the data corresponds to a protocol selected from a set comprising a PCIe protocol and a network protocol. In addition, the methods and devices may also configure a CPU based on the determined protocol. The methods and devices may also receive a second electronic signal comprising second data at a pin or land of the CPU, wherein the pin or land is connected to a PCIe lane and wherein the second data is formatted in accordance with determined protocol. In addition, the methods and devices may process the second data in accordance with the determined protocol.Type: GrantFiled: October 24, 2012Date of Patent: March 24, 2015Assignee: Mellanox Technologies, LtdInventors: Oren Tzvi Sela, Noam Bloch
-
Patent number: 8959265Abstract: 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: GrantFiled: November 21, 2012Date of Patent: February 17, 2015Assignee: Mellanox Technologies Ltd.Inventors: Ofer Hayut, Noam Bloch, Michael Kagan, Ariel Shachar
-
Publication number: 20150029853Abstract: In a data network congestion control in a virtualized environment is enforced in packet flows to and from virtual machines in a host. A hypervisor and network interface hardware in the host are trusted components. Enforcement comprises estimating congestion states in the data network attributable to respective packet flows, recognizing a new packet that belongs to one of the data packet flows, and using one or more of the trusted components and to make a determination based on the congestion states that the new packet belongs to a congestion-producing packet flow. A congestion-control policy is applied by one or more of the trusted components to the new packet responsively to the determination.Type: ApplicationFiled: July 23, 2014Publication date: January 29, 2015Inventors: Shachar Raindel, Noam Bloch, Liran Liss, Diego Crupnicoff, Marina Lipshteyn
-
Patent number: 8924605Abstract: 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 generate completion reports and to write a plurality of the completion reports to the system memory via the bus together in a single bus transaction.Type: GrantFiled: November 21, 2012Date of Patent: December 30, 2014Assignee: Mellanox Technologies Ltd.Inventors: Ofer Hayut, Noam Bloch, Michael Kagan, Ariel Shachar
-
Publication number: 20140379836Abstract: A network interface includes a host interface for communicating with a node, and circuitry which is configured to communicate with one or more other nodes over a communication network so as to carry out, jointly with one or more other nodes, a redundant storage operation that includes a redundancy calculation, including performing the redundancy calculation on behalf of the node.Type: ApplicationFiled: June 25, 2013Publication date: December 25, 2014Inventors: Omer Zilberboim, Ofer Hayut, Yaron Haviv, Liron Mula, Noam Bloch, Nir Getter, Ariel Shachar
-
Patent number: 8914458Abstract: A method for data transfer includes receiving in an input/output (I/O) operation a first segment of data to be written to a specified virtual address in a host memory. Upon receiving the first segment of the data, it is detected that a first page that contains the specified virtual address is swapped out of the host memory. At least one second page of the host memory is identified, to which a second segment of the data is expected to be written. Responsively to detecting that the first page is swapped out and to identifying the at least one second page, at least the first and second pages are swapped into the host memory. After swapping at least the first and second pages into the host memory, the data are written to the first and second pages.Type: GrantFiled: September 27, 2012Date of Patent: December 16, 2014Assignee: Mellanox Technologies Ltd.Inventors: Shachar Raindel, Haggai Eran, Liran Liss, Noam Bloch
-
Publication number: 20140324939Abstract: A Network Interface (NI) includes a host interface, which is configured to receive from a host processor of a node one or more cross-channel work requests that are derived from an operation to be executed by the node. The NI includes 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 cross-channel work requests via the host interface, and to execute the cross-channel 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: ApplicationFiled: July 7, 2014Publication date: October 30, 2014Inventors: Noam Bloch, Gil Bloch, Ariel Shachar, Hillel Chapman, Ishai Rabinobitz, Pavel Shamis, Gilad Shainer
-
Publication number: 20140247832Abstract: A method for communication, includes allocating, in a network interface controller (NIC) a single dynamically-connected (DC) initiator context for serving requests from an initiator process running on the initiator host to transmit data to multiple target processes running on one or more target nodes. The NIC transmits a first connect packet directed to a first target process and referencing the DC initiator context so as to open a first dynamic connection with the first target process. The NIC receives over the packet network, in response to the first connect packet, a first acknowledgment packet containing a first session identifier (ID). Following receipt of the first acknowledgment packet, the NIC transmits one or more first data packets containing the first session ID over the first dynamic connection from the NIC to the first target process. Dynamic connections with other target processes may subsequently be handled in similar fashion.Type: ApplicationFiled: May 15, 2014Publication date: September 4, 2014Applicant: Mellanox Technologies Ltd.Inventors: Ariel Shachar, Michael Kagan, Noam Bloch
-
Patent number: 8811417Abstract: A Network Interface (NI) includes a host interface, which is configured to receive from a host processor of a node one or more cross-channel work requests that are derived from an operation to be executed by the node. The NI includes 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 cross-channel work requests via the host interface, and to execute the cross-channel 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: GrantFiled: November 15, 2010Date of Patent: August 19, 2014Assignee: Mellanox Technologies Ltd.Inventors: Noam Bloch, Gil Bloch, Ariel Shachar, Hillel Chapman, Ishai Rabinovitz, Pavel Shamis, Gilad Shainer
-
Publication number: 20140185616Abstract: A network interface device includes a host interface for connection to a host processor having a memory. A network interface is configured to transmit and receive data packets over a data network, which supports multiple tenant networks overlaid on the data network. Processing circuitry is configured to receive, via the host interface, a work item submitted by a virtual machine running on the host processor, and to identify, responsively to the work item, a tenant network over which the virtual machine is authorized to communicate, wherein the work item specifies a message to be sent to a tenant destination address. The processing circuitry generates, in response to the work item, a data packet containing an encapsulation header that is associated with the tenant network, and to transmit the data packet over the data network to at least one data network address corresponding to the specified tenant destination address.Type: ApplicationFiled: December 31, 2012Publication date: July 3, 2014Applicant: MELLANOX TECHNOLOGIES LTD.Inventors: Noam Bloch, Eitan Hirshberg, Michael Kagan
-
Patent number: 8761189Abstract: A method for communication, includes allocating, in a network interface controller (NIC) a single dynamically-connected (DC) initiator context for serving requests from an initiator process running on the initiator host to transmit data to multiple target processes running on one or more target nodes. The NIC transmits a first connect packet directed to a first target process and referencing the DC initiator context so as to open a first dynamic connection with the first target process. The NIC receives over the packet network, in response to the first connect packet, a first acknowledgment packet containing a first session identifier (ID). Following receipt of the first acknowledgment packet, the NIC transmits one or more first data packets containing the first session ID over the first dynamic connection from the NIC to the first target process. Dynamic connections with other target processes may subsequently be handled in similar fashion.Type: GrantFiled: June 28, 2012Date of Patent: June 24, 2014Assignee: Mellanox Technologies Ltd.Inventors: Ariel Shachar, Michael Kagan, Noam Bloch
-
Patent number: 8751909Abstract: A network communication device includes a host interface, which is coupled to communicate with a host processor, having a host memory, so as to receive a work request to execute a transaction in which a plurality of data blocks are to be transferred over a packet network. Processing circuitry is configured to process multiple data packets so as to execute the transaction, each data packet in the transaction containing a portion of the data blocks, and the multiple data packets including at least first and last packets, which respectively contain the first and last data blocks of the transaction. The processing circuitry is configured to compute a transaction signature over the data blocks while processing the data packets so that at least the first data block passes out of the network communication device through one of the interfaces before computation of the transaction signature is completed.Type: GrantFiled: June 6, 2012Date of Patent: June 10, 2014Assignee: Mellanox Technologies Ltd.Inventors: Michael Kagan, Noam Bloch, Ariel Shachar
-
Patent number: 8751701Abstract: An input/output (I/O) device includes a memory buffer and off-loading hardware. The off-loading hardware is configured to accept from a host a scatter/gather list including one or more entries. The entries include at least a pattern-type entry that specifies a period of a periodic pattern of addresses that are to be accessed in a memory of the host. The off-loading hardware is configured to transfer data between the memory buffer of the I/O device and the memory of the host by accessing the addresses in the memory of the host in accordance with the periodic pattern at intervals indicated in the period.Type: GrantFiled: December 26, 2011Date of Patent: June 10, 2014Assignee: Mellanox Technologies Ltd.Inventors: Ariel Shahar, Noam Bloch, Adi Fuchs
-
Patent number: 8745276Abstract: A method for data transfer includes receiving in an input/output (I/O) operation data to be written to a specified virtual address in a host memory. Upon receiving the data, it is detected that a first page that contains the specified virtual address is swapped out of the host memory. Responsively to detecting that the first page is swapped out, the received data are written to a second, free page in the host memory, and the specified virtual address is remapped to the free page.Type: GrantFiled: September 27, 2012Date of Patent: June 3, 2014Assignee: Mellanox Technologies Ltd.Inventors: Noam Bloch, Shachar Raindel, Haggai Eran, Liran Liss
-
Publication number: 20140143455Abstract: 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 generate completion reports and to write a plurality of the completion reports to the system memory via the bus together in a single bus transaction.Type: ApplicationFiled: November 21, 2012Publication date: May 22, 2014Applicant: Mellanox Technologies Ltd.Inventors: Ofer Hayut, Noam Bloch, Michael Kagan, Ariel Shachar
-
Publication number: 20140143454Abstract: 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: ApplicationFiled: November 21, 2012Publication date: May 22, 2014Applicant: Mellanox Technologies Ltd.Inventors: Ofer Hayut, Noam Bloch, Michael Kagan, Ariel Shachar