Patents by Inventor Hsiao-keng J. Chu

Hsiao-keng J. Chu 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: 8549345
    Abstract: Methods and apparatus for processing a network connection in a computer system including a software network protocol stack and a network interface card including a hardware network protocol stack are disclosed. State information associated with the network connection is provided to or received by the driver associated with the network interface card. The driver provides the state information to the network interface card, thereby enabling the network interface card to process the network connection. In addition, any packet that is processed by the network interface card is also provided to the driver. Since the driver can maintain a copy of the state information and a copy of the data packet, the software network protocol stack can obtain the state information and the data packet from the driver in the event of a failure of the network interface card.
    Type: Grant
    Filed: October 31, 2003
    Date of Patent: October 1, 2013
    Assignee: Oracle America, Inc.
    Inventors: Sunay Tripathi, Hsiao-Keng J. Chu, Erik Nordmark
  • Patent number: 8111649
    Abstract: One embodiment of the present invention provides a system for routing packets in a network. A router may receive a packet at an input port which originated from a source system and which is destined to a destination system. The packet may include a traffic-management field which enables the source system to influence how the packet is routed through the network without requiring the source system to explicitly specify nodes that the packet should traverse. The router can use the traffic-management field to select an output port from a set of output ports of the router that are associated with different paths to the destination system. Since the traffic-management field's value is set by the source system, it enables the source system to influence how the router selects the output port, thereby enabling the source system to influence how the packet is routed through the network.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: February 7, 2012
    Assignee: Google Inc.
    Inventors: Amit Agarwall, Ross Koningstein, Hsiao-Keng J. Chu
  • Patent number: 7779132
    Abstract: One embodiment of the present invention provides a system for communicating data using a socket interface with multiple transport layer implementations. During operation the system creates a socket which can be used with a set of transport layer implementations. Next, the system binds the socket to a local port without specifying a particular transport layer implementation. The system then receives a request to connect to a target port that is associated with a target address. Next, the system selects a protocol implementation from the set of transport layer implementations using the target port and the target address. The system then sends a connection request to the target port using the selected protocol implementation. Note that the present invention does not require changing a networking application because the transport layer implementation is selected automatically by the system, instead of requiring the application to possess the knowledge to select the appropriate transport layer implementation.
    Type: Grant
    Filed: November 14, 2005
    Date of Patent: August 17, 2010
    Assignee: Oracle America, Inc.
    Inventors: Hsiao-Keng J. Chu, Darrin P. Johnson, Eric T. Cheng
  • Patent number: 7761609
    Abstract: A system for socket-level packet scheduling over connectionless network protocols includes a processor and a memory coupled to the processor. The memory contains program instructions executable by the processor to implement an operating system including a packet scheduler for scheduling data transmissions via a connectionless network protocol. In response to a request from an application specifying one or more desired performance metrics for a data transfer via the connectionless network protocol, the packet scheduler is configured to schedule the data transfer in accordance with the one or more desired performance metrics.
    Type: Grant
    Filed: January 20, 2005
    Date of Patent: July 20, 2010
    Assignee: Oracle America, Inc.
    Inventors: Thirumalai Srinivasan, Sunay Tripathi, Cahya A. Masputra, Hsiao-Keng J. Chu
  • Patent number: 7672239
    Abstract: Techniques, systems, and apparatus for offloading data connections from a kernel onto an associated TNIC are disclosed. Generally, embodiments of the invention are configured to send message packets of a connection to an endpoint at substantially the same time as an associated offload set-up process is performed. A method provides a data connection enabling data exchange between two TCP endpoints. After a determination is made that the connection is suitable for offloading, the kernel sends connection state information and a request that the connection be offloaded to a TNIC. Prior to completion of offload set up, an initial transmission of connection data is sent to an associated TCP endpoint. These principles can be implemented as software operating on a computer system, as a computer system module, as a computer program product and as a series of related devices and products.
    Type: Grant
    Filed: July 1, 2004
    Date of Patent: March 2, 2010
    Assignee: Sun Microsystems, Inc.
    Inventors: Sunay Tripathi, Hsiao-Keng J. Chu, Nicolas G. Droux
  • Patent number: 7523179
    Abstract: Techniques, systems, and apparatus for conducting direct data placement of network message data to a final destination in a user buffer are disclosed. Generally, the invention is configured to conduct direct data copying from a NIC memory to a final destination user buffer location without any intermediate copying to a kernel buffer. The invention includes a method that involves receiving network delivered messages by a NIC of a local computer. The message is stored in the memory of the NIC. The headers are stripped from the message and processed. A ULP handler of the local computer is invoked to process the ULP header of the network message. Using information obtained from the processed ULP header, suitable memory locations in a user buffer are identified and designated for saving associated message data. The message data is then directly placed from the NIC memory to the designated memory location in the user buffer without intermediate copy steps like DMA.
    Type: Grant
    Filed: December 14, 2004
    Date of Patent: April 21, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Hsiao-Keng J. Chu, Sunay Tripathi, Erik Nordmark
  • Patent number: 7472311
    Abstract: One embodiment of the present invention provides a system that can test an interface between a TCP (Transmission Control Protocol) Offload Engine (TOE) and an OS (Operating System) that has a TCP software stack. Note that the TOE is a specialized integrated circuit which allows TCP-related computations to be offloaded from the processor that executes the OS. During operation, the system receives a request from the OS to perform a TCP-related computation on the TOE, wherein the TCP-related computation is associated with a portion of the TCP software stack. The system then performs the TCP-related computation by executing the portion of the TCP software stack on a processor, which can either be the same as the one that is executing the OS, or it can be a different processor. Note that performing the TCP-related computation on a processor, instead of the TOE, allows the interface between the TOE and the OS to be tested without requiring an actual TOE chip.
    Type: Grant
    Filed: October 14, 2005
    Date of Patent: December 30, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Hsiao-Keng J. Chu, Eric T. Cheng, Sunay Tripathi
  • Patent number: 7447789
    Abstract: One embodiment of the present invention provides a system that buffers data inside of a byte-stream protocol at a transport layer on a client, which is receiving the data from an external source. The system operates by receiving a configuration parameter at the transport layer from an application executing on the client, wherein the configuration parameter specifies a condition upon which data buffered at the transport layer is to be sent to the application. The system then buffers data destined for the application at the transport layer on the client, and sends the buffered data to the application when the condition specified by the configuration parameter is met. Buffering data at the transport layer on the client facilitates more efficient processing of system calls.
    Type: Grant
    Filed: March 24, 2006
    Date of Patent: November 4, 2008
    Assignee: Sun Microsystems, Inc.
    Inventors: Bruce W. Curtis, Darrin P. Johnson, Hsiao-Keng J. Chu
  • Patent number: 7313148
    Abstract: A method and system for offloading the transmission of large blocks of data from Transmission Control Protocol residing on a transmitting host computer to an intelligent network interface card (NIC) that schedules and performs transmittals. The NIC receives a pointer to the location of data to be transmitted, partitions the data into packets and writes sequence numbers in the headers of the packets. The NIC receives acknowledgements (ACKs) from the recipient system which contain a window size and beginning sequence number for the next transmittal. Provided the ACK indicates appropriate forward progress, the NIC continues to transmit until its buffer is empty. By allowing the NIC to process many packets in this fashion, significant burden is taken off the host computer system. In case of no forward progress, as evidenced by a duplicate ACK, or of an empty buffer, NIC returns control to the transmitting host computer for further action.
    Type: Grant
    Filed: November 18, 2002
    Date of Patent: December 25, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Hsiao-keng J. Chu, Bruce W. Curtis
  • Patent number: 7020079
    Abstract: One embodiment of the present invention provides a system for bypassing use of a protocol checksum during communications across a reliable network link. The system operates by configuring a communication system to bypass use of the checksum during communications across the reliable network link. When the system subsequently receives an outbound packet to be transmitted to a destination across the reliable network link, the system sends the outbound packet to the destination without computing the checksum for the outbound packet. In one embodiment of the present invention, upon receiving an inbound packet from a source across the reliable network link, the system accepts the inbound packet without re-computing the checksum, wherein re-computation of the checksum is required by the communication protocol to verify that the inbound packet was received without errors.
    Type: Grant
    Filed: October 23, 2001
    Date of Patent: March 28, 2006
    Assignee: SUN Microsystems, Inc.
    Inventor: Hsiao-Keng J. Chu
  • Publication number: 20040095883
    Abstract: A method and system for offloading the transmission of large blocks of data from Transmission Control Protocol residing on a transmitting host computer to an intelligent network interface card (NIC) that schedules and performs transmittals. The NIC receives a pointer to the location of data to be transmitted, partitions the data into packets and writes sequence numbers in the headers of the packets. The NIC receives acknowledgements (ACKs) from the recipient system which contain a window size and beginning sequence number for the next transmittal. Provided the ACK indicates appropriate forward progress, the NIC continues to transmit until its buffer is empty. By allowing the NIC to process many packets in this fashion, significant burden is taken off the host computer system. In case of no forward progress, as evidenced by a duplicate ACK, or of an empty buffer, NIC returns control to the transmitting host computer for further action.
    Type: Application
    Filed: November 18, 2002
    Publication date: May 20, 2004
    Inventors: Hsiao-Keng J. Chu, Bruce W. Curtis
  • Publication number: 20030076847
    Abstract: One embodiment of the present invention provides a system for bypassing use of a protocol checksum during communications across a reliable network link. The system operates by configuring a communication system to bypass use of the checksum during communications across the reliable network link. When the system subsequently receives an outbound packet to be transmitted to a destination across the reliable network link, the system sends the outbound packet to the destination without computing the checksum for the outbound packet. In one embodiment of the present invention, upon receiving an inbound packet from a source across the reliable network link, the system accepts the inbound packet without re-computing the checksum, wherein re-computation of the checksum is required by the communication protocol to verify that the inbound packet was received without errors.
    Type: Application
    Filed: October 23, 2001
    Publication date: April 24, 2003
    Inventor: Hsiao-Keng J. Chu
  • Patent number: 6256657
    Abstract: A cross-domain data transfer technique is disclosed in which page remapping operations are eliminated in situations where physical memory addresses can be passed across domains. By passing physical memory addresses across domains instead of virtual memory addresses, the page remapping operations necessarily associated with passing virtual memory addresses across domains can be avoided in many cases. With the receipt of data across domains, page remapping operations are able to be deferred until the data is received in a domain that needs to touch the data. In certain cases, the transfer of data can be completed without ever having to map in the data to the receiving domain's address space. With the transmission of data across domains, where possible the pages are borrowed in their physical form. The invention can be embodied in many ways, including system, apparatus or method forms.
    Type: Grant
    Filed: January 13, 1999
    Date of Patent: July 3, 2001
    Assignee: Sun Microsystems, Inc.
    Inventor: Hsiao-keng J. Chu
  • Patent number: 5895499
    Abstract: A cross-domain data transfer technique is disclosed in which page remapping operations are eliminated in situations where physical memory addresses can be passed across domains. By passing physical memory addresses across domains instead of virtual memory addresses, the page remapping operations necessarily associated with passing virtual memory addresses across domains can be avoided in many cases. With the receipt of data across domains, page remapping operations are able to be deferred until the data is received in a domain that needs to touch the data. In certain cases, the transfer of data can be completed without ever having to map in the data to the receiving domain's address space. With the transmission of data across domains, where possible the pages are borrowed in their physical form. The invention can be embodied in many ways, including system, apparatus or method forms.
    Type: Grant
    Filed: July 3, 1995
    Date of Patent: April 20, 1999
    Assignee: Sun Microsystems, Inc.
    Inventor: Hsiao-keng J. Chu