IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0249006
(2005-10-11)
|
등록번호 |
US-8248939
(2012-08-21)
|
발명자
/ 주소 |
- Craft, Peter K.
- Gervais, Joseph L.
- Sharp, Colin C.
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
5 인용 특허 :
256 |
초록
▼
In one embodiment, a system for communicating over a network is disclosed, the system comprising: a processor running a protocol processing stack to control a TCP connection; a first offload engine that receives control of the TCP connection from the stack to perform a first task corresponding to th
In one embodiment, a system for communicating over a network is disclosed, the system comprising: a processor running a protocol processing stack to control a TCP connection; a first offload engine that receives control of the TCP connection from the stack to perform a first task corresponding to the TCP connection; and a second offload engine that receives control of the TCP connection from the first offload engine to perform a second task corresponding to the TCP connection. For example, the first offload engine can be protocol software such as an intermediate driver that can handle tasks such as teaming and/or reassembly of out-of-order data segments. As another example, the second offload engine can be a network interface card that provides hardware that accelerates data transfer.
대표청구항
▼
1. A system for communicating over a network, the system comprising: a processor running a protocol processing stack to establish and control a Transmission Control Protocol TCP connection, the TCP connection having a state and being identified at least in part by an Internet Protocol (IP) address a
1. A system for communicating over a network, the system comprising: a processor running a protocol processing stack to establish and control a Transmission Control Protocol TCP connection, the TCP connection having a state and being identified at least in part by an Internet Protocol (IP) address and TCP port of the host, and an IP address and TCP port of a remote host;a first offload engine that receives control of the TCP connection from the stack to perform a first task corresponding to the TCP connection; anda second offload engine that receives the TCP connection from the first offload engine to perform a second task corresponding to the TCP connection,wherein the first and second offload engines are part of the same host. 2. The system of claim 1, wherein the first offload engine cannot perform the second task. 3. The system of claim 1, wherein the second offload engine cannot perform the first task. 4. The system of claim 1, wherein the first task includes changing a network port for the TCP connection from a first network port to a second network port. 5. The system of claim 1, wherein the first task includes reassembly of out-of-order data for the TCP connection. 6. The system of claim 1, wherein the second task includes receive processing of packets corresponding to the TCP connection. 7. The system of claim 1, wherein the second task includes prepending headers to data segments for the TCP connection. 8. The system of claim 1, wherein the second task includes parsing received packet headers corresponding to the TCP connection. 9. A method for communicating over a network, the method comprising: establishing a Transmission Control Protocol (TCP) connection, the TCP connection having a state and being identified at least in part by an Internet Protocol (IP) address and TCP port of the host, and an IP address and TCP port of a remote host;performing, by a first processing mechanism, a first task that corresponds to a TCP connection;transferring control of the TCP connection from the first processing mechanism to a second processing mechanism;performing, by the second processing mechanism, a second task that corresponds to the TCP connection;transferring the TCP connection from the second processing mechanism to a third processing mechanism; andperforming, by the third processing mechanism, a third task that corresponds to the TCP connection;wherein control of the TCP connection is held by the first, second or third processing mechanism that controls a block of memory representing the current state of the TCP connection, and the processing mechanisms are part of the same host. 10. The method of claim 9, wherein the first task includes establishing the TCP connection. 11. The method of claim 9, wherein the second task includes reassembling out-of-order data segments for the TCP connection. 12. The method of claim 9, wherein the third task includes reassembling out-of-order data segments for the TCP connection. 13. The method of claim 9, wherein the second task includes switching a network port for the TCP connection from a first port to a second port. 14. The method of claim 9, wherein the second task includes switching a network port for the TCP connection from a first network interface device to a second network interface device. 15. The method of claim 9, wherein the third task includes receive processing of packets corresponding to the TCP connection. 16. The method of claim 9, wherein the third task includes prepending headers to data segments for the TCP connection. 17. The method of claim 9, wherein the third task includes parsing received packet headers corresponding to the TCP connection. 18. The method of claim 9, further comprising transferring control of the TCP connection from the third processing mechanism to the second processing mechanism. 19. The method of claim 9, further comprising transferring control of the TCP connection from the second processing mechanism to the first processing mechanism. 20. A system for communicating over a network, the system comprising: a first processing mechanism that establishes a transmission control protocol (TCP) connection, the TCP connection having a state and being identified at least in part by an Internet Protocol (IP) address and TCP port of the host, and an IP address and TCP port of a remote host;a second processing mechanism that receives control of the TCP connection from the first processing mechanism and performs a first task corresponding to the TCP connection; anda third processing mechanism that receives the TCP connection from the second processing mechanism and performs a third task corresponding to the TCP connection;wherein control of the TCP connection is held by the first, second or third processing mechanism that controls a block of memory representing the current state of the TCP connection, and the processing mechanisms are part of the same host. 21. The system of claim 20, wherein the second processing mechanism includes software running on a processor. 22. The system of claim 20, wherein the third processing mechanism includes a network interface card. 23. The system of claim 20, wherein the second processing mechanism is separated from the third processing mechanism by an input/output bus. 24. The system of claim 20, wherein the first processing mechanism is separated from the second processing mechanism by an input/output bus. 25. The system of claim 20, wherein at least one of the second and third processing mechanisms is an offload engine. 26. The system of claim 20, wherein the second task includes port aggregation, and the third task does not include port aggregation. 27. The system of claim 20, wherein the second set of tasks includes reassembly of out-of-order segments, and the third set of tasks does not include reassembly of out-of-order segments. 28. The system of claim 20, wherein the first set of tasks includes establishment of the network connection.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.