Re: zero-copy TCP fileserving

Bjorn Wesen (bjorn@sparta.lu.se)
Thu, 3 Jun 1999 11:26:37 +0200 (MET DST)


On Thu, 3 Jun 1999, Johannes Erdfelt wrote:
> What about the new network cards which can do checksums in hardware?
> Also, the decreased memory usage is also a (not as significant) win.
>
> Albeit, the architecture to support hardware checksums isn't in place,
> but that can be worked on.

At least for TCP reception, the architecture is in place:
[net/ipv4/tcp_ipv4.c]

/* Try to use the device checksum if provided. */
switch (skb->ip_summed) {
case CHECKSUM_NONE:
skb->csum = csum_partial((char *)th, len, 0);
case CHECKSUM_HW:
if(tcp_v4_check(th,len,skb->nh.iph->saddr,skb->nh ......

(meaning that it skips the csum_partial on incoming fragments if it knows
the network driver already has filled in a value in skb->csum)

Anyway, if noone seems to be working on the zero-copy framework, I'll just
have to go ahead and try to hack it in :) But I'm very sure that I saw
exactly this in the slides from last years USENIX, in a speech by someone
about future Linux network development.

/bjorn

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/