Patents by Inventor Ben-Zion Friedman

Ben-Zion Friedman 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: 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
  • Patent number: 8799620
    Abstract: Embodiments of the invention are generally directed to systems, methods, and apparatuses for linear to physical address translation with support for page attributes. In some embodiments, a system receives an instruction to translate a memory pointer to a physical memory address for a memory location. The system may return the physical memory address and one or more page attributes. Other embodiments are described and claimed.
    Type: Grant
    Filed: June 1, 2007
    Date of Patent: August 5, 2014
    Assignee: Intel Corporation
    Inventors: Ohad Falik, Ben-Zion Friedman, Jack Doweck, Eliezer Weissmann, James B. Crossland
  • 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: 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: 20130198312
    Abstract: Examples are disclosed for client access to a storage medium coupled with a server. A network input/output device for the server may receive a remote direct memory access (RDMA) command including a steering tag (S-Tag) from a client remote to the server. For these examples, the network input/output device may forward the RDMA command to a Non-Volatile Memory Express (NVMe) controller and access provided to a storage medium based on an allocation scheme that assigned the S-Tag to the storage medium. In some other examples, an NVMe controller may generate a memory mapping of one or more storage devices controlled by the NVMe controller to addresses for a base address register (BAR) on a Peripheral Component Interconnect Express (PCIe) bus. PCIe memory access commands received by the NVMe controller may be translated based on the memory mapping to provide access to the storage device. Other examples are described and claimed.
    Type: Application
    Filed: January 16, 2013
    Publication date: August 1, 2013
    Inventors: Eliezer Tamir, Ben-Zion Friedman, Phil C. Cayton, Theodore L. Willke, Frank Berry
  • 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
  • Publication number: 20130031568
    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: July 27, 2011
    Publication date: January 31, 2013
    Inventors: Eliezer Tamir, Eliel Louzoun, Ben-Zion Friedman, Miles J. Penner
  • Publication number: 20120300633
    Abstract: A method and apparatus to reduce memory required in a network interface controller to store per flow state information associated with a network connection is provided. Instead of storing per flow state information for a connection in the network interface controller at an endpoint of the connection, the per flow state information for the connection is stored in memory external to the network interface controller. The stored state information is conveyed in a packet by the network interface controller between the endpoints of the connection. For a Transmission Control Protocol (TCP) connection, the state information is conveyed between the endpoints of the TCP connection in a TCP option included in the TCP header in the packet.
    Type: Application
    Filed: August 7, 2012
    Publication date: November 29, 2012
    Inventors: Ben-Zion Friedman, Eliel Louzoun, Eliezer Tamir, Vladislav Kopzon
  • Publication number: 20120254480
    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: March 31, 2011
    Publication date: October 4, 2012
    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: 8259582
    Abstract: A method and apparatus to reduce memory required in a network interface controller to store per flow state information associated with a network connection is provided. Instead of storing per flow state information for a connection in the network interface controller at an endpoint of the connection, the per flow state information for the connection is stored in memory external to the network interface controller. The stored state information is conveyed in a packet by the network interface controller between the endpoints of the connection. For a Transmission Control Protocol (TCP) connection, the state information is conveyed between the endpoints of the TCP connection in a TCP option included in the TCP header in the packet.
    Type: Grant
    Filed: November 13, 2009
    Date of Patent: September 4, 2012
    Assignee: Intel Corporation
    Inventors: Ben-Zion Friedman, Eliel Louzoun, Eliezer Tamir, Vladislav Kopzon
  • Publication number: 20110116375
    Abstract: A method and apparatus to reduce memory required in a network interface controller to store per flow state information associated with a network connection is provided. Instead of storing per flow state information for a connection in the network interface controller at an endpoint of the connection, the per flow state information for the connection is stored in memory external to the network interface controller. The stored state information is conveyed in a packet by the network interface controller between the endpoints of the connection. For a Transmission Control Protocol (TCP) connection, the state information is conveyed between the endpoints of the TCP connection in a TCP option included in the TCP header in the packet.
    Type: Application
    Filed: November 13, 2009
    Publication date: May 19, 2011
    Inventors: Ben-Zion Friedman, Eliel Louzoun, Eliezer Tamir, Vladislav Kopzon
  • Patent number: 7793071
    Abstract: Disclosed is a system and method for storing a plurality of data packets in a plurality of memory buffers in a cache memory for reducing cache conflicts. The method includes determining size of each of a plurality of data packets; storing a first data packet of the plurality of data packets starting from a first address in a first memory buffer of the plurality of memory buffers; determining an offset based on the size of the first data packet; and storing a second data packet in a second buffer starting from a second address based on the offset.
    Type: Grant
    Filed: June 28, 2007
    Date of Patent: September 7, 2010
    Assignee: Intel Corporation
    Inventors: Ben-Zion Friedman, Ohad Falik
  • Publication number: 20090210382
    Abstract: Methods and apparatus are disclosed for searching prioritized content using a ternary content-addressable memory (TCAM). Data strings and corresponding priorities are stored at indexed storage locations in a TCAM. The priorities for the corresponding data strings are unsorted with respect to the indices of the indexed storage locations. The TCAM is searched using input data including an input string, an input mask, an input priority and a priority mask. The number of searches is no more than the number of possible distinct priorities—in some embodiments no more than the logarithm of the number of possible priorities. A match index is output corresponding to a storage location that has a matching string selected according to the input mask and also has an optimal priority.
    Type: Application
    Filed: February 15, 2008
    Publication date: August 20, 2009
    Inventors: ELIEL LOUZOUN, Ben-Zion Friedman
  • Publication number: 20090006765
    Abstract: Disclosed is a system and method for storing a plurality of data packets in a plurality of memory buffers in a cache memory for reducing cache conflicts. The method includes determining size of each of a plurality of data packets; storing a first data packet of the plurality of data packets starting from a first address in a first memory buffer of the plurality of memory buffers; determining an offset based on the size of the first data packet; and storing a second data packet in a second buffer starting from a second address based on the offset.
    Type: Application
    Filed: June 28, 2007
    Publication date: January 1, 2009
    Applicant: INTEL CORPORATION
    Inventors: Ben-Zion Friedman, Ohad Falik