Patents by Inventor Eliezer Tamir

Eliezer Tamir 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: 9030936
    Abstract: Methods and apparatus for implementing flow control with reduced buffer usage for network devices. In response to detection of flow control events, transmission of a data unit or segment such as an Ethernet frame is preempted in favor of a flow control message, resulting in aborting transmission of the frame. Data corresponding to the entirety of the frame is buffered at the transmitting station until the frame has been transmitted (or after a delay), enabling retransmission of the aborted frame. Preemption of frames in favor of flow control messages results in earlier responses to flow control events, enabling the size of buffers to be reduced.
    Type: Grant
    Filed: June 12, 2013
    Date of Patent: May 12, 2015
    Assignee: Intel Corporation
    Inventors: Ben-zion Friedman, Eliezer Tamir
  • Patent number: 8996755
    Abstract: An embodiment may include circuitry to facilitate, at least in part, a first network interface controller (NIC) in a client to be capable of accessing, via a second NIC in a server that is remote from the client and in a manner that is independent of an operating system environment in the server, at least one command interface of another controller of the server. The command interface may include at least one controller command queue. Such accessing may include writing at least one queue element to the at least one command queue to command the another controller to perform at least one operation associated with the another controller. The another controller may perform the at least one operation in response, at least in part, to the at least one queue element. Many alternatives, variations, and modifications are possible.
    Type: Grant
    Filed: January 23, 2014
    Date of Patent: March 31, 2015
    Assignee: Intel Corporation
    Inventors: Eliezer Tamir, Ben-Zion Friedman, Theodore L. Willke, Eliel Louzoun, Matthew R. Wilcox, Donald E. Wood, Steven B. McGowan, Robert O. Sharp
  • Publication number: 20150049769
    Abstract: Generally, this disclosure provides systems, methods and computer readable media for management of sockets and device queues for reduced latency packet processing. The method may include maintaining a unique-list comprising entries identifying device queues and an associated unique socket for each of the device queues, the unique socket selected from a plurality of sockets configured to receive packets; busy-polling the device queues on the unique-list; receiving a packet from one of the plurality of sockets; and updating the unique-list in response to detecting that the received packet was provided by an interrupt processing module. The updating may include identifying a device queue associated with the received packet; identifying a socket associated with the received packet; and if the identified device queue is not on one of the entries on the unique-list, creating a new entry on the unique-list, the new entry comprising the identified device queue and the identified socket.
    Type: Application
    Filed: August 14, 2013
    Publication date: February 19, 2015
    Inventors: Eliezer Tamir, Eliel Louzoun, Matthew R. Wilcox
  • Publication number: 20150012735
    Abstract: Examples are disclosed for remotely initializing or booting a client or host device. In some examples, a network (NW) input/output (I/O) device coupled to a host device may connect to a remote server via a NW communication link. For these examples, modules of the network I/O device may establish a control path to a non-volatile memory express (NVMe) controller maintained at the remote server using a remote direct memory access (RDMA) protocol. Properties of a storage device controlled by the NVMe controller as well has an RDMA service tag (STag) to indicate allocated portions of the storage device may be obtained. A system basic I/O system (BIOS) may be capable of using the RDMA STag to access the storage device and load an operating system (OS) kernel and one or more device drivers to remotely boot the host device. Other examples are described and claimed.
    Type: Application
    Filed: July 8, 2013
    Publication date: January 8, 2015
    Inventors: Eliezer Tamir, Prafulla Deuskar, Phil C. Cayton
  • Publication number: 20150012607
    Abstract: Examples are disclosed for replicating data between storage servers. In some examples, a network input/output (I/O) device coupled to either a client device or to a storage server may exchange remote direct memory access (RDMA) commands or RDMA completion commands associated with replicating data received from the client device. The data may be replicated to a plurality of storage servers interconnect to each other and/or the client device via respective network communication links. Other examples are described and claimed.
    Type: Application
    Filed: July 8, 2013
    Publication date: January 8, 2015
    Inventors: Phil C. Cayton, Eliezer Tamir, Frank L. Berry, Donald E. Wood
  • Publication number: 20140369194
    Abstract: Methods and apparatus for implementing flow control with reduced buffer usage for network devices. In response to detection of flow control events, transmission of a data unit or segment such as an Ethernet frame is preempted in favor of a flow control message, resulting in aborting transmission of the frame. Data corresponding to the entirety of the frame is buffered at the transmitting station until the frame has been transmitted (or after a delay), enabling retransmission of the aborted frame. Preemption of frames in favor of flow control messages results in earlier responses to flow control events, enabling the size of buffers to be reduced.
    Type: Application
    Filed: June 12, 2013
    Publication date: December 18, 2014
    Inventors: Ben-zion Friedman, Eliezer Tamir
  • Publication number: 20140325013
    Abstract: Examples are disclosed for command validation for access to a storage device maintained at a server. In some examples, a network input/output device coupled to the server may receive the command from a client remote to the server. For these examples, elements or modules of the network input/output device may be capable of validating the command and reporting the status of the received command to the client. Other examples are described and claimed.
    Type: Application
    Filed: January 16, 2013
    Publication date: October 30, 2014
    Inventors: Eliezer Tamir, Vadim Makhervaks, Ben-Zion Friedman, Phil Cayton, Theodore L. Willke
  • Publication number: 20140233583
    Abstract: Generally, this disclosure provides devices, methods and computer readable media for packet processing with reduced latency. The device may include a data queue to store data descriptors associated with data packets, the data packets to be transferred between a network and a driver circuit. The device may also include an interrupt generation circuit to generate an interrupt to the driver circuit. The interrupt may be generated in response to a combination of an expiration of a delay timer and a non-empty condition of the data queue. The device may further include an interrupt delay register to enable the driver circuit to reset the delay timer, the reset postponing the interrupt generation.
    Type: Application
    Filed: February 21, 2013
    Publication date: August 21, 2014
    Inventors: ELIEZER TAMIR, JESSE C. BRANDEBURG, ANIL VASUDEVAN
  • Publication number: 20140229637
    Abstract: Methods and apparatus are disclosed for virtualizable, forward-compatible hardware-software interfaces. Embodiments may be used in a driver whether it is a physical driver or a virtual driver. Commands are queued from the driver and fetched to the device. An actions table is accessed to determine if drivers are permitted to perform commands. Events are queued for the drivers responsive to commands. If drivers are not permitted to perform a command, device firmware may forward the command to a privileged driver to perform the required command. If a driver is only permitted to perform a command with assistance the command is forwarded for corrections and execution. If a command is to be dropped, a completion event may be queued as if the command had executed. Drivers may have no indication of which actions were taken. The actions table may be changed for hardware/software modifications or dynamically according to configuration changes.
    Type: Application
    Filed: April 22, 2014
    Publication date: August 14, 2014
    Inventors: Eliezer Tamir, Eliel Louzon, Ben-Zion Friedman, Miles J. Penner
  • Publication number: 20140223026
    Abstract: Generally, this disclosure relates to a method of flow control. The method may include determining a server load in response to a request from a client; selecting a type of credit based at least in part on server load; and sending a credit to the client based at least in part on server load, wherein server load corresponds to a utilization level of a server and wherein the credit corresponds to an amount of data that may be transferred between the server and the client and the credit is configured to decrease over time if the credit is unused by the client.
    Type: Application
    Filed: January 10, 2012
    Publication date: August 7, 2014
    Inventors: Eliezer Tamir, Phil C. Cayton, Ben-Zion Friedman, Robert O. Sharp, Donald E. Wood, Vadim Makhervaks
  • Publication number: 20140153574
    Abstract: Methods and apparatus for implementing notification by network elements of packet drops. In response to determining a packet is to be dropped, a network element such as a switch or router determines the source of the packet and returns a dropped packet notification message to the source. Upon receipt of notification, networking software or embedded hardware on the source causes the dropped packet to be retransmitted. The notification may also be sent from the network element to the destination computer to inform networking software or embedded logic implemented by the destination computer that the packet was dropped and notification to the source has been sent, thus alleviating the destination from needing to send a Selective ACKnowledge (SACK) message to inform the source the packet was not delivered.
    Type: Application
    Filed: December 5, 2012
    Publication date: June 5, 2014
    Inventors: Eliel Louzoun, Radia Perlman, Ben-Zion Friedman, Ygdal Naouri, Eliezer Tamir
  • Publication number: 20140136646
    Abstract: An embodiment may include circuitry to facilitate, at least in part, a first network interface controller (NIC) in a client to be capable of accessing, via a second NIC in a server that is remote from the client and in a manner that is independent of an operating system environment in the server, at least one command interface of another controller of the server. The command interface may include at least one controller command queue. Such accessing may include writing at least one queue element to the at least one command queue to command the another controller to perform at least one operation associated with the another controller. The another controller may perform the at least one operation in response, at least in part, to the at least one queue element. Many alternatives, variations, and modifications are possible.
    Type: Application
    Filed: January 23, 2014
    Publication date: May 15, 2014
    Inventors: Eliezer Tamir, Ben-Zion Friedman, Theodore L. Willke, Eliel Louzoun, Matthew R. Wilcox, Donald E. Wood, Steven B. McGowan, Robert O. Sharp
  • Patent number: 8725893
    Abstract: Certain aspects of a method and system for configuring a plurality of network interfaces that share a physical interface (PHY) may include a system comprising one or more physical network interface controllers (NICs) and two or more virtual NICs. One or more drivers associated with each of the virtual NICs that share one or more Ethernet ports associated with the physical NICs may be synchronized based on controlling one or more parameters associated with one or more Ethernet ports. One or more wake on LAN (WoL) patterns associated with each of the drivers may be detected at one or more Ethernet ports. A wake up signal may be communicated to one or more drivers associated with the detected WoL patterns. One of the drivers may be appointed to be a port master driver. If a failure of the appointed port master driver is detected, another driver may be appointed to be the port master driver.
    Type: Grant
    Filed: April 11, 2011
    Date of Patent: May 13, 2014
    Assignee: Broadcom Corporation
    Inventors: Eliezer Tamir, Uri Tal, Shay Mizrachi
  • Patent number: 8719843
    Abstract: Methods and apparatus are disclosed for virtualizable, forward-compatible hardware-software interfaces. Embodiments may be used in a driver whether it is a physical driver or a virtual driver. Commands are queued from the driver and fetched to the device. An actions table is accessed to determine if drivers are permitted to perform commands. Events are queued for the drivers responsive to commands. If drivers are not permitted to perform a command, device firmware may forward the command to a privileged driver to perform the required command. If a driver is only permitted to perform a command with assistance the command is forwarded for corrections and execution. If a command is to be dropped, a completion event may be queued as if the command had executed. Drivers may have no indication of which actions were taken. The actions table may be changed for hardware/software modifications or dynamically according to configuration changes.
    Type: Grant
    Filed: July 27, 2011
    Date of Patent: May 6, 2014
    Assignee: Intel Corporation
    Inventors: Eliezer Tamir, Eliel Louzoun, Ben-Zion Friedman, Miles J. Penner
  • Publication number: 20140112346
    Abstract: Generally, this disclosure provides systems and methods for providing forward compatibility between a driver module and one or more present or future versions of a network interface. The system may include a network interface configured to transfer data between a host system and a network; and a programmable circuit module associated with the network interface, the programmable circuit module configured to provide compatibility between the network interface and a driver module associated with the host system, wherein the driver module includes a first set of capabilities and the network interface includes a second set of capabilities.
    Type: Application
    Filed: October 24, 2012
    Publication date: April 24, 2014
    Inventors: ELIEZER TAMIR, BORIS KLEIMAN, BEN-ZION FRIEDMAN, ELIEL LOUZOUN
  • Patent number: 8677031
    Abstract: An embodiment may include circuitry to facilitate, at least in part, a first network interface controller (NIC) in a client to be capable of accessing, via a second NIC in a server that is remote from the client and in a manner that is independent of an operating system environment in the server, at least one command interface of another controller of the server. The command interface may include at least one controller command queue. Such accessing may include writing at least one queue element to the at least one command queue to command the another controller to perform at least one operation associated with the another controller. The another controller may perform the at least one operation in response, at least in part, to the at least one queue element. Many alternatives, variations, and modifications are possible.
    Type: Grant
    Filed: March 31, 2011
    Date of Patent: March 18, 2014
    Assignee: Intel Corporation
    Inventors: Eliezer Tamir, Ben-Zion Friedman, Theodore L. Willke, Eliel Louzoun, Matthew R. Wilcox, Donald E. Wood, Steven B. McGowan, Robert O. Sharp
  • Publication number: 20130262868
    Abstract: Examples are disclosed for exchanging a key between an input/output device for network device and a first processing element operating on the network device. Data having a destination associated with the first processing element may be received by the input/output device. The exchanged key may be used to encrypt the received data. The encrypted data may then be sent to a buffer maintained at least in part in a memory for the network device. The memory may be arranged to enable sharing of the buffer with at least a second processing element operating on the network device. Examples are also disclosed for the processing element to receive an indication of the storing of the encrypted data in the buffer. The processing element may then obtain the encrypted data from the buffer and decrypt the data using the exchanged key.
    Type: Application
    Filed: March 15, 2013
    Publication date: October 3, 2013
    Inventors: Ben-Zion Friedman, Eliezer Tamir, Eliel Louzoun, Ohad Falik
  • Publication number: 20130259036
    Abstract: Examples are disclosed for forwarding or receiving data segments associated with a large data packets. In some examples, a large data packet may be segmented into a number of data segments having separate headers that include identifiers to associate the data segments with the large data packet. The data segments with separate headers may then be forwarded from a network node via a communication channel. In other examples, the data segments with separate headers may be received at another network node and then recombined to form the large data, packet at the other network node. Other examples are described and claimed.
    Type: Application
    Filed: March 15, 2013
    Publication date: October 3, 2013
    Inventors: Eliezer Tamir, Ben-Zion Friedman
  • Publication number: 20130246828
    Abstract: An embodiment may include circuitry that may be capable of performing operations that may include generating, at least in part, at least one message to announce that at least one network node (1) is requesting, at least in part, that one or more transmissions to the at least one network node be postponed, at least in part, and/or (2) is entering, at least in part after issuance of the at least one message, a relatively lower power state relative to a relatively higher power state. Additionally or alternatively, the operations may include, in response, at least in part, to the at least one message, postponing, at least in part, at least one intermediate node at least one transmission (received by the at least one intermediate node) to the at least one network node. Many alternatives, variations, and/or modifications are possible without departing from this embodiment.
    Type: Application
    Filed: March 16, 2012
    Publication date: September 19, 2013
    Inventors: Ygdal Naouri, Ben-Zion Friedman, Eliezer Tamir, Eliel Louzoun, Ilango Ganga
  • Publication number: 20130198311
    Abstract: Examples are disclosed for use of vendor defined messages to execute a command to access a storage device maintained at a server. In some examples, a network input/output device coupled to the server may receive the command from a client remote to the server for the client to access the storage device. For these examples, elements or components of the network input/output device may be capable of forwarding the command either directly to a Non-Volatile Memory Express (NVMe) controller that controls the storage device or to a manageability module coupled between the network input/out device and the NVMe controller. Vendor specific information may be forwarded with the command and used by either the NVMe controller or the manageability module to facilitate execution of the command. Other examples are described and claimed.
    Type: Application
    Filed: January 16, 2013
    Publication date: August 1, 2013
    Inventors: Eliezer Tamir, Ben-Zion Friedman, Steen Larsen