Date: Tue, 31 Mar 1998 09:54:19 -0800 (PST) From: "Jonathan M. Bresler" <jmb> To: rminnich@Sarnoff.COM (Ron G. Minnich) Cc: freebsd-hackers@FreeBSD.ORG Subject: Re: Virtual Interface Architecture Message-ID: <199803311754.JAA04570@hub.freebsd.org> In-Reply-To: <Pine.SUN.3.91.980331122600.9500D-100000@terra> from "Ron G. Minnich" at "Mar 31, 98 12:26:57 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
Ron G. Minnich wrote:
> > As someone else mentioned, Van Jacobson has gotten the fast path case
> > down to ~30 instructions for TCP processing on the receive side. If
> > we could get around all the complex memory management using something like
> > above, it should perform fairly well.
>
> This has been mentioned, starting ca. 1990. Has anyone seen the code?
> nowadays when I bring this up people shrug their shoulders in disbelief.
> Kind of a shame.
yes, i have seen the code....its referenced from one of
stevens books, if memory serves. A.....nailed it!
thank you dejanews.
Subject: Re: how to get an old posting...
From: rstevens@noao.edu (W. Richard Stevens)
Date: 1995/08/05
Message-ID: <400ndt$1j6@noao.edu>
Newsgroups: comp.protocols.tcp-ip
[Subscribe to comp.protocols.tcp-ip]
[More Headers]
Article Segment 1 of 3
(Get All 3 Segments)
> I am studying about TCP/IP and came across the following reference which
> is an article posted on usenet group comp.protocols.tcp-ip in 1993.
> I am wondering how I can access this posting. Is there an archive
> somewhere from where I can ftp or the only resort is to contact the author?
I've never found a complete archive of this newsgroup--is anyone aware
of such a beast?
> Partridge, C. 1993, "Jaconson on TCP in 30 instructions",
> Message-ID <1993Sept8.213239.28992@sics.se>,
> Usenet, comp.protocols.tcp-ip Newsgroup (Sept).
Here is the article that Craig posted.
Rich Stevens
that should give you enough to find it.
the url that i got is:
http://x5.dejanews.com/getdoc.xp?AN=107566328.1&CONTEXT=891366636.900530773&hitnum=1
ld [%i0+4],%l3 ! load packet tcp header fields
ld [%i0+8],%l4
ld [%i0+12],%l2
ld [%i0+16],%l0
ld [%i1+72],%o0 ! compute header checksum
addcc %l3,%o0,%o3
addxcc %l4,%o3,%o3
addxcc %l2,%o3,%o3
addxcc %l0,%o3,%o3
sethi %hi(268369920),%o1 ! check if hdr. pred possible
andn %l2,%o1,%o1
ld [%i1+60],%o2
cmp %o1,%o2
bne L1
ld [%i1+68],%o0
cmp %l3,%o0
bne L1
addcc %i2,-20,%i2
bne,a L3
ld [%i1+36],%o0
! packet error or ack processing
...
L3:
cmp %l4,%o0
bne L1
add %i0,20,%o0
mov %i2,%o1
call _in_uiomove,0
mov %i3,%o2
cmp %o0,0
be L6
add %l3,%i2,%l3
! checksum error or user buffer error
...
L6:
ld [%i1+96],%o0
subcc %l3,%o0,%g0
bneg L7
st %l3,[%i1+68]
! send ack
...
br L8
L7:
! free pbuf
...
L8: ! done with this packet - continue
...
L1: ! hdr pred. failed - do it the hard way
jmb
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199803311754.JAA04570>
