Patents by Inventor Kan Frankie Fan

Kan Frankie Fan 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: 7617291
    Abstract: A method and system for handling received out-of-order network data using generic buffers for non-posting TCP applications is disclosed. When incoming out-of-order data is received and there is no application buffer posted, a TCP data placement may notify a TCP reassembler to terminate a current generic buffer, allocate a new current generic buffer, and DMA the incoming data into the new current generic buffer. The TCP data placement may notify the TCP reassembler the starting TCP sequence number and the length of the new current generic buffer. Moreover, the TCP data placement may add entries into a TCP out-of-order table when the incoming data creates a new disjoint area. The TCP data placement may adjust an existing disjoint area to reflect any updates. When a TCP application allocates or posts a buffer, then the TCP reassembler may copy data from a linked list of generic buffers into posted buffers.
    Type: Grant
    Filed: December 15, 2004
    Date of Patent: November 10, 2009
    Assignee: Broadcom Corporation
    Inventors: Kan Frankie Fan, Scott McDaniel
  • Patent number: 7512144
    Abstract: Certain aspects of the present invention for transmission control protocol (TCP) retransmission processing may comprise receiving a request for packet retransmission to be processed by an offload network interface card (NIC). A remote peer, a retransmission timer, or a fast retransmission signal may initiate the request. The NIC processes the request information and sends notification to the host of the request. The host searches the TCP buffers of the TCP transmission window in host memory for the packet. Once the packet is located, the host may send the offload NIC the buffer descriptors containing data that locates the packet in host memory. The offload NIC may retrieve the packet from host memory and may retransmit the packet according to the request information. The offload NIC may send notification to the host that the packet has been retransmitted.
    Type: Grant
    Filed: November 30, 2004
    Date of Patent: March 31, 2009
    Assignee: Broadcom Corporation
    Inventor: Kan Frankie Fan
  • Patent number: 7457845
    Abstract: Aspects of the invention for posting buffers for a non-posting TCP application may comprise posting at least one generic buffer located in a memory external to a host adapter and transferring incoming data for a TCP connection to the posted generic buffer prior to the non-posting TCP application posting a TCP application buffer for the incoming data. At least one generic buffer may be allocated from a pool of available generic buffers upon receipt of the incoming TCP connection data. At least a portion of the incoming data may be stored in the allocated generic buffer if the TCP application buffer is unable to accommodate the incoming data. The method may further determining whether the incoming data for the TCP connection transferred to the posted generic buffer is in sequence and ordering the incoming data based on a sequence number if the incoming data is out of sequence.
    Type: Grant
    Filed: August 20, 2003
    Date of Patent: November 25, 2008
    Assignee: Broadcom Corporation
    Inventors: Kan Frankie Fan, Scott Sterling McDaniel
  • Patent number: 7388866
    Abstract: Systems and methods that expedite connection negotiations. In one embodiment, a method expedites an upper layer protocol (ULP) negotiation between a first node and a second node. The method may include, for example, sending a modified acknowledgement packet from the first node to the second node, the modified acknowledgement packet including information that is used to retrieve parameters agreed upon by the first node and the second node in a previous ULP negotiation between the first node and the second node.
    Type: Grant
    Filed: March 3, 2003
    Date of Patent: June 17, 2008
    Assignee: Broadcom Corporation
    Inventors: Kan Frankie Fan, Uri Elzur
  • Patent number: 7266079
    Abstract: A method, apparatus, and computer program product for balancing transmission unit traffic over network links, including disposing transmission units into flows; grouping flows into first flow lists, each corresponding to a selected network link; determining a traffic metric representative of a traffic load on the selected network link; responsive to the traffic metric, regrouping flows into second flow lists corresponding to the selected network link, the regrouping balancing the transmission unit traffic among the network links; and transmitting the respective second flow list over the respective selected network link.
    Type: Grant
    Filed: July 2, 2001
    Date of Patent: September 4, 2007
    Assignee: Broadcom Corporation
    Inventor: Kan Frankie Fan
  • Patent number: 7224692
    Abstract: Systems and methods that provide fault tolerant transmission control protocol (TCP) offloading are provided. In one example, a method that provides fault tolerant TCP offloading is provided. The method may include one or more of the following steps: receiving TCP segment via a TCP offload engine (TOE); calculating a TCP sequence number; writing a receive sequence record based upon at least the calculated TCP sequence number to a TCP sequence update queue in a host; and updating a first host variable with a value from the written receive sequence record.
    Type: Grant
    Filed: January 6, 2003
    Date of Patent: May 29, 2007
    Assignee: Broadcom Corporation
    Inventor: Kan Frankie Fan
  • Publication number: 20040158651
    Abstract: Systems and methods that provide teaming are provided. In one embodiment, a system for communicating may include, for example, a transport layer/network layer processing stack and an intermediate driver. The intermediate driver may be coupled to the transport layer/network layer processing stack via a first miniport and a second miniport. The first miniport may support teaming. The second miniport may be dedicated to a system that can offload traffic from the transport layer/network layer processing stack.
    Type: Application
    Filed: February 6, 2004
    Publication date: August 12, 2004
    Inventors: Kan Frankie Fan, Hav Khauv
  • Publication number: 20040047361
    Abstract: Aspects of the invention for posting buffers for a non-posting TCP application may comprise posting at least one generic buffer located in a memory external to a host adapter and transferring incoming data for a TCP connection to the posted generic buffer prior to the non-posting TCP application posting a TCP application buffer for the incoming data. At least one generic buffer may be allocated from a pool of available generic buffers upon receipt of the incoming TCP connection data. At least a portion of the incoming data may be stored in the allocated generic buffer if the TCP application buffer is unable to accommodate the incoming data. The method may further determining whether the incoming data for the TCP connection transferred to the posted generic buffer is in sequence and ordering the incoming data based on a sequence number if the incoming data is out of sequence.
    Type: Application
    Filed: August 20, 2003
    Publication date: March 11, 2004
    Inventors: Kan Frankie Fan, Scott Sterling McDaniel
  • Publication number: 20040049591
    Abstract: Systems and methods that provide transmission control protocol (TCP) offloading and uploading are provided. In one example, a multiple stack system may include a software stack and a hardware stack. The software stack may be adapted to process a first set of TCP packet streams. The hardware stack may be adapted to process a second set of TCP packet streams and may be coupled to the software stack. The software stack may be adapted to offload one or more TCP connections to the hardware stack. The hardware stack may be adapted to upload one or more TCP connections to the software stack. The software stack and the hardware stack may process one or more TCP connections concurrently.
    Type: Application
    Filed: November 18, 2002
    Publication date: March 11, 2004
    Inventors: Kan Frankie Fan, Scott S. McDaniel
  • Publication number: 20040042412
    Abstract: Systems and methods that provide fault tolerant transmission control protocol (TCP) offloading are provided. In one example, a method that provides fault tolerant TCP offloading is provided. The method may include one or more of the following steps: receiving TCP segment via a TCP offload engine (TOE); calculating a TCP sequence number; writing a receive sequence record based upon at least the calculated TCP sequence number to a TCP sequence update queue in a host; and updating a first host variable with a value from the written receive sequence record.
    Type: Application
    Filed: January 6, 2003
    Publication date: March 4, 2004
    Inventor: Kan Frankie Fan
  • Publication number: 20040019689
    Abstract: Systems and methods that manage multiple stack environments are provided. In one example, a system may include, for example, a first protocol processing stack, a second protocol processing stack and a mapper. The mapper may be coupled to the first protocol processing stack and to the second protocol processing stack. A first port number may be associated with the first protocol processing stack and a second port number may be associated with the second protocol processing stack. The mapper may store a correspondence between the first port number and the second port number.
    Type: Application
    Filed: January 6, 2003
    Publication date: January 29, 2004
    Inventor: Kan Frankie Fan
  • Publication number: 20030169775
    Abstract: Systems and methods that expedite connection negotiations. In one embodiment, a method expedites an upper layer protocol (ULP) negotiation between a first node and a second node. The method may include, for example, sending a modified acknowledgement packet from the first node to the second node, the modified acknowledgement packet including information that is used to retrieve parameters agreed upon by the first node and the second node in a previous ULP negotiation between the first node and the second node.
    Type: Application
    Filed: March 3, 2003
    Publication date: September 11, 2003
    Inventors: Kan Frankie Fan, Uri Elzur
  • Publication number: 20020054567
    Abstract: A method, apparatus, and computer program product for balancing transmission unit traffic over network links, including disposing transmission units into flows; grouping flows into first flow lists, each corresponding to a selected network link; determining a traffic metric representative of a traffic load on the selected network link; responsive to the traffic metric, regrouping flows into second flow lists corresponding to the selected network link, the regrouping balancing the transmission unit traffic among the network links; and transmitting the respective second flow list over the respective selected network link.
    Type: Application
    Filed: July 2, 2001
    Publication date: May 9, 2002
    Inventor: Kan Frankie Fan