Re: zero-copy TCP

From: Jeff V. Merkey (jmerkey@timpanogas.com)
Date: Sat Sep 02 2000 - 22:31:10 EST


Petr,

I could give you a packet burst module to study. It's MANOS version and
not linux, so you will need to backport it, but it will let you fake out
a NetWare server without needing all this memory.

Jeff

Petr Vandrovec wrote:
>
> On Sun, Sep 03, 2000 at 12:00:13AM +0100, Alan Cox wrote:
> > > **NCP** is does not reside in IPX at all. That's why the implementation
> > > in Linux is busted. The window size is variable and keys off of HOW
> > > MANY FREE ECBS ARE IN THE SYSTEM. It doe not belong in the IPX/SPX
> > > stack, but inside of MARS-NWE proper.
> >
> > Packet burst is in MARS-NWE not the kernel IPX code. Our IPX code actually
> > doesnt know about NCP at all - so it has no fast paths or kernel helpers for
> > the cache. It means we are materially poorer but we dont have to maintain
> > magic for NCP. If you were doing a Linux netware clone you would want a
> > kncpd for the cache hit cases
>
> Hi Alan,
> there is ncpfs. It is client, not server... Main problem is that
> packet burst protocol is that it is only for file reads and writes,
> you cannot use it to listing (large) directories, or to return large
> replies from NDS in one exchange.
>
> Fortunately NW5 can do NCP over TCP and UDP and ncpfs (in 2.4) currently
> uses 60KB NCP window when talking over TCP to NW5. Due to nature of NCP
> protocol it is much faster than with 1KB (or 1.5KB) window used for IPX or
> UDP... Unfortunately, server allocates this handshaked window size of memory
> for your connection, so 1000 conns with 60KB handshaked window consume 60MB
> of memory...
>
> I do not plan implementing packet burst in ncpfs at all... NW5 does IP
> reasonably well to let IPX die.
>
> > > > The I/O size was typically 512-1024 bytes so you couldnt do page flipping, but
> > > > since these were all trusted paths nobody I suspect worried to much.
> > >
> > > 576 bytes. Drew came up with this because he did not want to fuck
> >
> > (minus headers)
>
> Fortunately when Novell included packetburst code, they also added real
> IPX MTU discovery into NCP (unfortunately, they really build it into NCP,
> so f.e. SPX2 uses different handshake). That way it usually uses 1.45KB
> window on ethernet and 4.2kB on tokenring (unless you changed some
> settable value in server configuration - then you can go up to your
> 16KB tokenring limit).
> Best regards,
> Petr Vandrovec
> vandrove@vc.cvut.cz
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Sep 07 2000 - 21:00:15 EST