Claims
- 1. A method of setting up a delegated connection, the method comprising:
establishing a TCP connection; and determining whether or not to delegate the TCP connection for processing by hardware.
- 2. The method of claim 1, further comprising setting up an entry in a delegated connection table upon determining to delegate the TCP connection.
- 3. The method of claim 1, wherein the step of determining is based on at least one characteristic of the connection.
- 4. The method of claim 3, wherein the characteristic is a priority specified for the TCP connection.
- 5. The method of claim 3, wherein the at least one characteristic is a duration of the TCP connection.
- 6. The method of claim 3, wherein the at least one characteristic is a frame rate of the TCP connection.
- 7. The method of claim 2, further comprising transferring user buffer information for the delegated connection to the hardware.
- 8. The method of claim 2, further comprising receiving a frame for the delegated connection and determining a user buffer is available.
- 9. The method of claim 8, further comprising uploading a portion of the frame to a location specified in the user buffer information.
- 10. The method of claim 2, further comprising receiving a frame for the delegated connection and determining a user buffer is not available.
- 11. The method of claim 10, further comprising uploading a portion of the frame to a legacy buffer.
- 12. A system for setting up a delegated connection, the system comprising:
means for establishing a TCP connection; and means for determining whether or not to delegate the TCP connection for processing by hardware.
- 13. The system of claim 12, further comprising means for setting up an entry in a delegated connection table.
- 14. The system of claim 12, further comprising means for transferring user buffer information for the delegated connection to the hardware.
- 15. The system of claim 12, further comprising means for determining a user buffer is available.
- 16. The system of claim 12, further comprising means for setting a maximum segment size.
- 17. The system of claim 12, further comprising means for enabling and disabling acknowledgement coalescing.
- 18. A system for setting up a delegated connection, the system comprising:
a CPU configured to execute an application program and a TCP Stack, the TCP Stack configured to determine whether or not to delegate a TCP connection for processing by hardware; and a system memory coupled to the CPU.
- 19. The system of claim 18, wherein a first portion of the system memory stores at least one user buffer and a second portion of the system memory configured to store at least one legacy buffer.
- 20. The system of claim 19, wherein the TCP Stack provides the hardware with location information corresponding to the at least one user buffer.
- 21. The system of claim 20, wherein the location information includes a physical address.
- 22. The system of claim 20, wherein the location information includes a user buffer size.
- 23. The system of claim 19, wherein the first portion of the system memory is allocated to the application program.
- 24. The system of claim 19, wherein the second portion of the system memory is allocated to a software driver.
- 25. The system of claim 19, wherein the hardware is configured to process frames to produce payload data for the delegated connection set up by the TCP Stack.
- 26. The system of claim 25, wherein the hardware is configured to upload the payload data to one or more user buffers when user buffer location information is provided to the hardware by the application program and translated into physical address space by the TCP Stack.
- 27. The system of claim 25, wherein the hardware is configured to upload the payload data to a legacy buffer when user buffer location information is not provided to the hardware by the application program.
- 28. The system of claim 18, wherein the TCP Stack is configured to select a connection for delegation based on at least one connection characteristic.
- 29. The system of claim 28, wherein the at least one connection characteristic includes connection duration.
- 30. The system of claim 28, wherein the at least one connection characteristic includes connection frame rate.
- 31. The system of claim 28, wherein the at least one connection characteristic includes a connection priority.
CROSS-REFERENCE TO RELATED APPLICATION(S)
[0001] This application claims priority from commonly owned co-pending provisional U.S. Patent Application No. 60/476,570 entitled “HARDWARE-OPTIMIZED TCP/IP (HOT) PROCESSING,” filed Jun. 5, 2003, having common inventors and assignee as this application, which is incorporated by reference as though fully set forth herein.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60476570 |
Jun 2003 |
US |