Packet coalescing
Abstract
In general, in one aspect, the disclosures describes a method that includes receiving multiple ingress Internet Protocol packets, each of the multiple ingress Internet Protocol packets having an Internet Protocol header and a Transmission Control Protocol segment having a Transmission Control Protocol header and a Transmission Control Protocol payload, where the multiple packets belonging to a same Transmission Control Protocol/Internet Protocol flow. The method also includes preparing an Internet Protocol packet having a single Internet Protocol header and a single Transmission Control Protocol segment having a single Transmission Control Protocol header and a single payload formed by a combination of the Transmission Control Protocol segment payloads of the multiple Internet Protocol packets. The method further includes generating a signal that causes receive processing of the Internet Protocol packet.
Claims
exact text as granted — not AI-modified1 - 23 . (canceled)
24 . An apparatus comprising:
a network interface controller comprising circuitry that, when the network interface controller is in operation, is configurable to perform operations comprising:
receive multiple Transmission Control Protocol (TCP)/Internet Protocol (IP) packets, the multiple TCP/IP packets comprising respective TCP headers, respective IP headers, and respective payloads;
combine the respective payloads of the multiple TCP/IP packets to form a combined payload for inclusion in a coalesced packet in which the respective TCP headers and respective IP headers of the multiple packets are to be excluded; and
generate TCP header fields and IP header fields for the coalesced packet based, at least in part, upon the combined payload, the TCP header fields to be comprised in a single TCP header for the combined payload, the IP header fields to be comprised in a single IP header for the combined payload.
25 . The apparatus of claim 24 , wherein the apparatus comprises an adapter that comprises the network interface controller.
26 . The apparatus of claim 25 , wherein the network interface controller comprises Application Specific Integrated Circuitry (ASIC).
27 . The apparatus of claim 26 , wherein: when the network interface controller is in the operation, the network interface controller is configurable for use in interrupt moderation operations.
28 . The apparatus of claim 27 , wherein: when the network interface controller is in the operation, the network interface controller is configurable to implement TCP/IP offload operations.
29 . The apparatus of claim 28 , wherein the multiple TCP/IP packets, as received by the network interface controller, are to be encapsulated in Ethernet frames.
30 . The apparatus of claim 29 , wherein the network interface controller comprises physical layer circuitry for use in interfacing the network interface controller to network communications medium.
31 . The apparatus of claim 30 , wherein: when the network interface controller is in the operation, the network interface controller is to determine, based at least in part upon header flow information of the multiple TCP/IP packets, whether the multiple TCP/IP packets belong to the same flow.
32 . A system comprising:
a network interface controller to couple to a network, wherein the network interface controller comprises circuitry that, when the network interface controller is in operation, is configurable to perform operations comprising:
receive multiple Transmission Control Protocol (TCP)/Internet Protocol (IP) packets, the multiple TCP/IP packets comprising respective TCP headers, respective IP headers, and respective payloads;
combine the respective payloads of the multiple TCP/IP packets to form a combined payload for inclusion in a coalesced packet in which the respective TCP headers and respective IP headers of the multiple packets are to be excluded; and
generate TCP header fields and IP header fields for the coalesced packet based, at least in part, upon the combined payload, the TCP header fields to be comprised in a single TCP header for the combined payload, the IP header fields to be comprised in a single IP header for the combined payload
33 . The apparatus of claim 32 , wherein the system further comprises an adapter that comprises the network interface controller.
34 . The apparatus of claim 32 , wherein the network interface controller comprises Application Specific Integrated Circuitry (ASIC).
35 . The apparatus of claim 32 , wherein: when the network interface controller is in the operation, the network interface controller is configurable for use in interrupt moderation operations.
36 . The apparatus of claim 32 , wherein: when the network interface controller is in the operation, the network interface controller is configurable to implement TCP/IP offload operations.
37 . The apparatus of claim 32 , wherein the multiple TCP/IP packets, as received by the network interface controller, are to be encapsulated in Ethernet frames.
38 . The apparatus of claim 32 , wherein the network interface controller comprises physical layer circuitry for use in interfacing the network interface controller to network communications medium.
39 . The apparatus of claim 32 , wherein: when the network interface controller is in the operation, the network interface controller is to determine, based at least in part upon header flow information of the multiple TCP/IP packets, whether the multiple TCP/IP packets belong to the same flow.
40 . At least one non-transitory, machine accessible storage medium with instructions stored thereon, the instructions executable to cause a machine to:
receive multiple Transmission Control Protocol (TCP)/Internet Protocol (IP) packets while a network interface controller is in operation; combine the respective payloads of the multiple TCP/IP packets to form a combined payload for inclusion in a coalesced packet in which the respective TCP headers and respective IP headers of the multiple packets are to be excluded; and generate TCP header fields and IP header fields for the coalesced packet based, at least in part, upon the combined payload, the TCP header fields to be comprised in a single TCP header for the combined payload, the IP header fields to be comprised in a single IP header for the combined payload.
41 . The storage medium of claim 40 , wherein the network interface controller comprises Application Specific Integrated Circuitry (ASIC).
42 . The a storage medium of claim 40 , wherein the instructions are further executable to cause the machine to perform TCP/IP offload operations.
43 . The storage medium of claim 40 , wherein the instructions are further executable to cause the machine to perform TCP/IP offload operations.
44 . The storage medium of claim 40 , wherein the multiple TCP/IP packets, as received by the network interface controller, are to be encapsulated in Ethernet frames.
45 . The storage medium of claim 40 , wherein the network interface controller comprises physical layer circuitry for use in interfacing the network interface controller to network communications medium.
46 . The storage medium of claim 40 , wherein the instructions are further executable to cause the machine to determine, based at least in part upon header flow information of the multiple TCP/IP packets, whether the multiple TCP/IP packets belong to the same flow.Join the waitlist — get patent alerts
Track US2020328973A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.