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: 8549345Abstract: 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: GrantFiled: October 31, 2003Date of Patent: October 1, 2013Assignee: Oracle America, Inc.Inventors: Sunay Tripathi, Hsiao-Keng J. Chu, Erik Nordmark
-
Patent number: 8111649Abstract: 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: GrantFiled: March 31, 2008Date of Patent: February 7, 2012Assignee: Google Inc.Inventors: Amit Agarwall, Ross Koningstein, Hsiao-Keng J. Chu
-
Patent number: 7779132Abstract: 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: GrantFiled: November 14, 2005Date of Patent: August 17, 2010Assignee: Oracle America, Inc.Inventors: Hsiao-Keng J. Chu, Darrin P. Johnson, Eric T. Cheng
-
Patent number: 7761609Abstract: 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: GrantFiled: January 20, 2005Date of Patent: July 20, 2010Assignee: Oracle America, Inc.Inventors: Thirumalai Srinivasan, Sunay Tripathi, Cahya A. Masputra, Hsiao-Keng J. Chu
-
Patent number: 7672239Abstract: 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: GrantFiled: July 1, 2004Date of Patent: March 2, 2010Assignee: Sun Microsystems, Inc.Inventors: Sunay Tripathi, Hsiao-Keng J. Chu, Nicolas G. Droux
-
Patent number: 7523179Abstract: 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: GrantFiled: December 14, 2004Date of Patent: April 21, 2009Assignee: Sun Microsystems, Inc.Inventors: Hsiao-Keng J. Chu, Sunay Tripathi, Erik Nordmark
-
Patent number: 7472311Abstract: 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: GrantFiled: October 14, 2005Date of Patent: December 30, 2008Assignee: Sun Microsystems, Inc.Inventors: Hsiao-Keng J. Chu, Eric T. Cheng, Sunay Tripathi
-
Patent number: 7447789Abstract: 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: GrantFiled: March 24, 2006Date of Patent: November 4, 2008Assignee: Sun Microsystems, Inc.Inventors: Bruce W. Curtis, Darrin P. Johnson, Hsiao-Keng J. Chu
-
Patent number: 7313148Abstract: 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: GrantFiled: November 18, 2002Date of Patent: December 25, 2007Assignee: Sun Microsystems, Inc.Inventors: Hsiao-keng J. Chu, Bruce W. Curtis
-
Patent number: 7020079Abstract: 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: GrantFiled: October 23, 2001Date of Patent: March 28, 2006Assignee: SUN Microsystems, Inc.Inventor: Hsiao-Keng J. Chu
-
Publication number: 20040095883Abstract: 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: ApplicationFiled: November 18, 2002Publication date: May 20, 2004Inventors: Hsiao-Keng J. Chu, Bruce W. Curtis
-
Publication number: 20030076847Abstract: 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: ApplicationFiled: October 23, 2001Publication date: April 24, 2003Inventor: Hsiao-Keng J. Chu
-
Patent number: 6256657Abstract: 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: GrantFiled: January 13, 1999Date of Patent: July 3, 2001Assignee: Sun Microsystems, Inc.Inventor: Hsiao-keng J. Chu
-
Patent number: 5895499Abstract: 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: GrantFiled: July 3, 1995Date of Patent: April 20, 1999Assignee: Sun Microsystems, Inc.Inventor: Hsiao-keng J. Chu