Patents by Inventor Shay Mizrachi

Shay Mizrachi 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: 20100198984
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload with best effort direct placement of incoming traffic are disclosed. Aspects of a method may include collecting TCP segments in a network interface card (NIC) processor without transferring state information to a host processor every time a TCP segment is received. When an event occurs that terminates the collection of TCP segments, the NIC processor may generate a new aggregated TCP segment based on the collected TCP segments. If a placement sequence number corresponding to the generated new TCP segment for the particular network flow is received before the TCP segment is received, the generated new TCP segment may be transferred directly from the memory to the user buffer instead of transferring the data to a kernel buffer, which would require further copy by the host stack from kernel buffer to user buffer.
    Type: Application
    Filed: April 5, 2010
    Publication date: August 5, 2010
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Publication number: 20100174824
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload are disclosed. Aspects of a method may include collecting TCP segments in a network interface card (NIC) processor without transferring state information to a host system. The collected TCP segments may be buffered in a coalescer. The coalescer may verify that the network flow associated with the collected TCP segments has an entry in a flow lookup table (FLT). When the FLT is full, the coalescer may close a current entry and assign the network flow to the available entry. The coalescer may also update information in the FLT. When an event occurs that terminates the collection of TCP segments, the coalescer may generate a single aggregated TCP segment based on the collected TCP segments. The aggregated TCP segment and state information may be communicated to the host system for processing.
    Type: Application
    Filed: March 22, 2010
    Publication date: July 8, 2010
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Patent number: 7693138
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload with best effort direct placement of incoming traffic are disclosed. Aspects of a method may include collecting TCP segments in a network interface card (NIC) processor without transferring state information to a host processor every time a TCP segment is received. When an event occurs that terminates the collection of TCP segments, the NIC processor may generate a new aggregated TCP segment based on the collected TCP segments. If a placement sequence number corresponding to the generated new TCP segment for the particular network flow is received before the TCP segment is received, the generated new TCP segment may be transferred directly from the memory to the user buffer instead of transferring the data to a kernel buffer, which would require further copy by the host stack from kernel buffer to user buffer.
    Type: Grant
    Filed: July 18, 2006
    Date of Patent: April 6, 2010
    Assignee: Broadcom Corporation
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Patent number: 7688838
    Abstract: A method for communication includes inputting from a host processor to a network interface device a sequence of work requests indicative of operations to be carried out by the network interface device with respect to a plurality of the connections. The device looks ahead through the sequence in order to identify at least first and second operations that are to be carried out with respect to one of the connections in response to first and second work requests, respectively, wherein the second work request does not immediately follow the first work request in the sequence. The device loads the context data for the one of the connections from a host memory into a context cache, and performs at least the first and second operations sequentially while the context data are held in the cache.
    Type: Grant
    Filed: May 3, 2006
    Date of Patent: March 30, 2010
    Inventors: Eliezer Aloni, Kobby Carmona, Shay Mizrachi, Rafi Shalom, Caitlin Bestler, Merav Sicron, Dov Hirshfeld, Amit Oren, Uri Tal
  • Patent number: 7684344
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload are disclosed. Aspects of a method may include collecting TCP segments in a network interface card (NIC) processor without transferring state information to a host system. The collected TCP segments may be buffered in a coalescer. The coalescer may verify that the network flow associated with the collected TCP segments has an entry in a flow lookup table (FLT). When the FLT is full, the coalescer may close a current entry and assign the network flow to the available entry. The coalescer may also update information in the FLT. When an event occurs that terminates the collection of TCP segments, the coalescer may generate a single aggregated TCP segment based on the collected TCP segments. The aggregated TCP segment and state information may be communicated to the host system for processing.
    Type: Grant
    Filed: July 18, 2006
    Date of Patent: March 23, 2010
    Assignee: Broadcom Corporation
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Patent number: 7620692
    Abstract: Apparatus for receiving a sequence of Transmission Control Protocol (TCP) segments, including a parsing machine which is adapted to parse at least one TCP segment so as to recover an Internet Small Computer Systems Interface Protocol Data Unit (iSCSI PDU), the PDU including a header and at least part of a payload. The apparatus further includes at least one analysis machine which is adapted to receive and evaluate the header and to receive and route the at least part of the payload for the iSCSI PDU, the parsing machine and the at least one analysis machine operating substantially autonomously.
    Type: Grant
    Filed: September 6, 2002
    Date of Patent: November 17, 2009
    Inventors: Shay Mizrachi, Rafi Shalom, Ron Grinfeld
  • Publication number: 20090150702
    Abstract: Various example implementations are disclosed. According to one example implementation, a system may include multiple logic devices, a power input, and a logic controller. The logic devices may each be configured to assert a request for auxiliary power to a logic controller. The power input may be configured to provide the auxiliary power to one or more of the logic devices. The logic controller may be configured to poll the logic devices by polling less than all of the logic devices at a time to determine whether the logic devices assert the request for the auxiliary power.
    Type: Application
    Filed: December 6, 2007
    Publication date: June 11, 2009
    Applicant: BROADCOM CORPORATION
    Inventors: Arik (Ariel) Pickholz, Shay Mizrachi
  • Publication number: 20090080332
    Abstract: Methods and systems for a fast drop recovery for a TCP connection are disclosed. Aspects of one method may include a receiving device on a network receiving an out-of-order data. The receiving device may then signal to a transmitting device on the network, which sent the out-of-order packet, to enter a congestion alleviation mode without waiting for a delay period. The network packet transfer may be via TCP protocol, for example. The delay period may comprise a retransmission time-out period if the receiving device does not save isles. If the receiving device does save one or more isles, the delay period may be a period associated with delayed ACK. The signal may comprise a TCP option and/or an available TCP flag. The signal may also comprise, for example, three duplicate ACKs. Other similar signals may be used for networks that use other protocols than TCP.
    Type: Application
    Filed: September 25, 2007
    Publication date: March 26, 2009
    Inventors: Shay Mizrachi, Eliezer Aloni, Patricia Thaler, Pavel Anissimov, Dov Hirshfeld
  • Publication number: 20080310420
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload with transmit and receive coupling are disclosed. Aspects of a method may include collecting at least one received TCP segment for a determined network flow via a network interface card (NIC) processor. The state information for the received TCP segment and state information for transmitted TCP segments for the determined network flow may be stored at the NIC without transferring state information for the received TCP segment and the state information for the transmitted TCP segments to a host system communicatively coupled to the NIC. A new TCP segment comprising the collected TCP segments may be generated after a termination event occurs. The generated new TCP segment, new state information for the generated new TCP segment, and the state information for the transmitted TCP segments may be communicated to the host system for TCP offload.
    Type: Application
    Filed: July 18, 2006
    Publication date: December 18, 2008
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Publication number: 20080270599
    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: Application
    Filed: April 29, 2008
    Publication date: October 30, 2008
    Inventors: Eliezer Tamir, Uri Tal, Shay Mizrachi
  • Publication number: 20080235484
    Abstract: Certain aspects of a method and system for host memory alignment may include splitting a received read and/or write I/O request at a first of a plurality of memory cache line boundaries to generate a first portion of the received I/O request. A second portion of the received read and/or write I/O request may be split into a plurality of segments so that each of the plurality of segments is aligned with one or more of the plurality of memory cache line boundaries. A cost of memory bandwidth for accessing host memory may be minimized based on the splitting of the second portion of the received read and/or write I/O request.
    Type: Application
    Filed: March 21, 2008
    Publication date: September 25, 2008
    Inventors: Uri Tal, Eliezer Aloni, Shay Mizrachi, Kobby Carmona
  • Publication number: 20080211306
    Abstract: Methods and systems for supplying power to multiple voltage islands using a single supply source are disclosed. Aspects of one method may include providing power to a first of a plurality of voltage islands, and individually controlling providing of power to each of a remaining portion of the plurality of voltage islands. For example, when an electronic system is first powered on, a low current voltage source may be used to supply power to a primary voltage island. As a higher current voltage source becomes available, power derived from the higher current voltage source may be provided to the primary voltage island and to secondary voltage islands. Power to each of the secondary voltage islands may be, for example, individually controlled via a power MOS transistor. The power MOS transistor may also be configured to allow a faster blocking time than unblocking time.
    Type: Application
    Filed: December 19, 2007
    Publication date: September 4, 2008
    Inventors: Ariel Pickholz, Long Nguyen, Shay Mizrachi
  • Publication number: 20080215787
    Abstract: Certain aspects of a method and system for processing status blocks based on interrupt mapping may be disclosed. Exemplary aspects of the method may include determining whether a particular status block has been processed by at least one CPU based on comparing a value of a first register with a value of a second register, wherein the first register may comprise a running index value of at least one client segment within the particular status block and the second register may comprise a current running index value of at least one client segment. An interrupt may be generated, if the value of the first register is not equal to the value of the second register. The particular status block may be processed by at least one CPU based on the generated interrupt.
    Type: Application
    Filed: February 6, 2008
    Publication date: September 4, 2008
    Inventors: Shay Mizrachi, Eliezer Aloni
  • Publication number: 20080126751
    Abstract: Aspects of a scheduler hint method and system to improve network interface controller (NIC) receive (RX) processing cache performance are presented. Aspects of a system may include a NIC that enables generation of a processor selection bias value. The processor selection bias value may comprise hint data. A scheduler within a multiprocessor operating system (OS) executing on a multiprocessor computing system may enable selection of one of a plurality of processors based on the generated processor selection bias value. The scheduler executing on the multiprocessor computer system may enable execution of specified code, for example an egress process task, on the selected one of the plurality of processors. The egress process task may be executing subsequent to an ingress task process, which was executed on the selected one of the plurality of processors in response to one or more data packets received at the NIC.
    Type: Application
    Filed: November 27, 2007
    Publication date: May 29, 2008
    Inventors: Shay Mizrachi, Eliezer Tamir
  • Publication number: 20080126622
    Abstract: Certain exemplary aspects of a method and system for optimizing CPU performance for network ingress flow may include prefetching a plurality of socket buffers from host memory utilizing a virtual address database. The prefetched plurality of socket buffers may be cached. A plurality of data segments extracted from the cached plurality of socket buffers may be copied to a plurality of user buffers. The plurality of data segments may be received from a NIC. The NIC may be enabled to place header information corresponding to the received plurality of data segments in a FIFO memory buffer. The received plurality of data segments may be classified based on the placed header information in the FIFO memory buffer.
    Type: Application
    Filed: November 27, 2007
    Publication date: May 29, 2008
    Inventors: Eliezer Tamir, Shay Mizrachi
  • Publication number: 20080091868
    Abstract: Certain aspects of a method and system for delayed completion coalescing may be disclosed. Exemplary aspects of the method may include accumulating a plurality of bytes of incoming TCP segments in a host memory until a number of the plurality of bytes of incoming TCP segments reaches a threshold value. A completion queue entry (CQE) may be generated to a driver when the plurality of bytes of incoming TCP segments reaches the threshold value and the plurality of bytes of incoming TCP segments may be copied to a user application. The method may also include delaying in a driver, an update of a TCP receive window size until one of the incoming TCP segments corresponding to a particular sequence number is copied to the user application. The CQE may also be generated to the driver when at least one of the incoming TCP segments is received with a TCP PUSH bit SET and the TCP receive window size is greater than a particular window size value.
    Type: Application
    Filed: October 17, 2007
    Publication date: April 17, 2008
    Inventors: Shay Mizrachi, Eliezer Aloni, Uri Tal
  • Publication number: 20070076623
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload are disclosed. Aspects of a method may include collecting TCP segments in a network interface card (NIC) processor without transferring state information to a host system. The collected TCP segments may be buffered in a coalescer. The coalescer may verify that the network flow associated with the collected TCP segments has an entry in a flow lookup table (FLT). When the FLT is full, the coalescer may close a current entry and assign the network flow to the available entry. The coalescer may also update information in the FLT. When an event occurs that terminates the collection of TCP segments, the coalescer may generate a single aggregated TCP segment based on the collected TCP segments. The aggregated TCP segment and state information may be communicated to the host system for processing.
    Type: Application
    Filed: July 18, 2006
    Publication date: April 5, 2007
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Publication number: 20070033301
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload with dynamic zero copy sending are disclosed. Aspects of a method may include enabling direct memory access of data for a particular user application directly from a user buffer to a buffer in a single integrated circuit, for example, a network interface card (NIC), without copying the data to a kernel buffer, based on an occurrence of a number of memory page faults. At least one page in the user buffer comprising data for the particular user application to be transmitted may be marked as a copy-on-write to prevent modification of contents of the buffer before receipt of at least one acknowledgement packet.
    Type: Application
    Filed: July 18, 2006
    Publication date: February 8, 2007
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi
  • Patent number: 7167973
    Abstract: A microprocessor, including a plurality of registers and an instruction execution module which is adapted to process a sequence of conditional tests. The module uses an instruction set that has the following instructions: A test-and-condition instruction which evaluates each of the conditional tests as true or false and responsive thereto sets respective values in the registers. A priority-test-branch instruction, which causes the instruction execution module, responsive to one of the conditional tests evaluating as true and to the respective values in the registers, to execute a priority code module. A combination-test-branch instruction, which causes the instruction execution module, responsive to evaluations of the conditional tests and to the respective values in the registers, to execute a combination code module.
    Type: Grant
    Filed: November 15, 2002
    Date of Patent: January 23, 2007
    Assignee: Broadcom Corporation
    Inventors: Shay Mizrachi, Gilad Ayalonn
  • Publication number: 20070014245
    Abstract: Certain aspects of a method and system for transparent transmission control protocol (TCP) offload with best effort direct placement of incoming traffic are disclosed. Aspects of a method may include collecting TCP segments in a network interface card (NIC) processor without transferring state information to a host processor every time a TCP segment is received. When an event occurs that terminates the collection of TCP segments, the NIC processor may generate a new aggregated TCP segment based on the collected TCP segments. If a placement sequence number corresponding to the generated new TCP segment for the particular network flow is received before the TCP segment is received, the generated new TCP segment may be transferred directly from the memory to the user buffer instead of transferring the data to a kernel buffer, which would require further copy by the host stack from kernel buffer to user buffer.
    Type: Application
    Filed: July 18, 2006
    Publication date: January 18, 2007
    Inventors: Eliezer Aloni, Rafi Shalom, Shay Mizrachi, Dov Hirshfeld, Aviv Greenberg, Assaf Grunfeld, Eliezer Tamir, Guy Corem, Ori Hanegbi