All NICs already work off of DMA to access/copy packets into/from memory. Yes, even your $10 ones. So “would need DMA to stand a chance” doesn’t have any technical meaning other than putting a bunch of words together.
The bottleneck for TCP is sequence number processing, which must be done on a single core (for each flow) and cannot be parallelized. You also cannot offload sequence number processing without making major sacrifices that result in corrupted data in several edge cases (see TCP chimney offload, which cannot handle the required TCP extensions needed to run TCP at 1Gbps). So no, “more offloading” is easy to say but not feasible.
Who needs it: data centers trying to scale legacy software, or dealing with multi region data replication (rocev2 is terrible for long distance links). But no, no home user would need it
All NICs already work off of DMA to access/copy packets into/from memory. Yes, even your $10 ones. So “would need DMA to stand a chance” doesn’t have any technical meaning other than putting a bunch of words together.
The bottleneck for TCP is sequence number processing, which must be done on a single core (for each flow) and cannot be parallelized. You also cannot offload sequence number processing without making major sacrifices that result in corrupted data in several edge cases (see TCP chimney offload, which cannot handle the required TCP extensions needed to run TCP at 1Gbps). So no, “more offloading” is easy to say but not feasible.
Who needs it: data centers trying to scale legacy software, or dealing with multi region data replication (rocev2 is terrible for long distance links). But no, no home user would need it