UDP Checksum on NFS in AIX 3.2?

UDP Checksum on NFS in AIX 3.2?

Post by Nathan D. La » Fri, 13 Nov 1992 09:57:11



I am attempting to run NFS over a slip link on AIX 3.2.2 at 19.2K.  Now, I know
that slip is no way to run NFS, but I am conducting reliability and feasibility
tests for the VERY occassional use of this access method.

I am using mount -o rsize=512,wsize=512 to keep the bandwidth of the line
conserved as much as possible.

Now:  I have had some problems with corrupted files on writes to a machine
on the other side of the link.  I would like to turn on udp checksums to
increase the reliability.  I know on Sun one can patch /vmunix to turn
on udp checksums.  I have checked "no" to see if udp checksums are one of the
options and they are not.  An info search turned up nothing w/ "nfs,udp,
checksum".  But when checking "udp,checksum" it said that they could be enabled by
a C udp program.  I guess that means that I could program my own NFS or get
the source to turn them on, but that seems like rebuilding the wheel.

Anyone know if udp checksums can be turned on in AIX 3.2.2?
My SE is out of town and probably wouldn't know anyway :(

Thanks in advance for any help.

-Nathan Lane
Trico Title Company, Santa Barbara, CA

 
 
 

UDP Checksum on NFS in AIX 3.2?

Post by Vernon Schryv » Fri, 13 Nov 1992 13:17:45



Quote:>I am attempting to run NFS over a slip link on AIX 3.2.2 at 19.2K.  Now, I know
>that slip is no way to run NFS, but I am conducting reliability and feasibility
>tests for the VERY occassional use of this access method. ...

On the contrary.  NFS over SLIP over v.32bis/v.42/v.42bis works fine
and frequently for me, and at the tail of a 1200 mile 56K link, which
is in turn hooked to a chain of ethernets and FDDI rings.  Many hops.

It's not as fast as over FDDI, but what do you expect?

Quote:> I am using mount -o rsize=512,wsize=512 to keep the bandwidth of the line
> conserved as much as possible. ...

Each to their own.  I prefer a block size 4096, but I also use a SLIP
implemenation that does a TOS hack of moving small packets to the front
to minimize the harm done to simultaneous rlogin's.  I prefer bigger
blocks to conserve bandwidth, since a small rsize implies more UDP and
(much, much worse) RPC-XDR headers per byte of data.  I don't use 8192
or larger, because losing a single IP fragment means waiting for a long
NFS timeout and then retransmitting the whole thing.  At 1.6-3.4KByte/sec,
a retransmission takes a while.

Of course, I only use NFS between machines that are shipped with UDP
checksums on by default.  If you don't have that luxury, then you might
hack your own version of slip to add a checksum of the packet.  It's
not a big deal, at least with some systems.



 
 
 

UDP Checksum on NFS in AIX 3.2?

Post by Brandon Gue » Fri, 13 Nov 1992 23:57:47



Quote:>I am attempting to run NFS over a slip link on AIX 3.2.2 at 19.2K.  Now, I know
>that slip is no way to run NFS, but I am conducting reliability and feasibility
>tests for the VERY occassional use of this access method.

[stuff deleted]

>Anyone know if udp checksums can be turned on in AIX 3.2.2?
>My SE is out of town and probably wouldn't know anyway :(

>Thanks in advance for any help.

>-Nathan Lane
>Trico Title Company, Santa Barbara, CA


We have also had occasion to need UDP checksumming (during a problem
with a router).  Upon investigation we found that there is no standard
way in AIX to do this.  We were, however, able to get a patch from
Austin technical support which turned UDP checksumming on.  

The problem with this was that it was just a patch and not a part of
standard AIX.  This made it somewhat difficult to use.  Based on
our experience, we opened a PMR requesting this feature be added to
standard AIX.  So far we have had not action on our PMR.  

My suggestion is as follows:

1) For your immediate need- talk to tech support and see if you can
   get a patch for your level of the system which allows you to turn
   it on.

2) For everyone's long term benefit, open a PMR requesting it be made
   standard like we did.  I believe the only way we can ever get this
   to happen is if enought people request it.

If you want additional info on our experience, please email me.

Brandon

--

Empros Systems International    | (A division of Something)
2300 Berkshire Lane North       | Voice (612) 553-4529
Plymouth, MN 55441-3694         | Fax   (612) 553-4018

 
 
 

UDP Checksum on NFS in AIX 3.2?

Post by Richard Bas » Tue, 17 Nov 1992 02:42:54


I had this complaint about AIX 3.1 and wrote the following program (it
works under AIX 3.2 as well).

-Richard Basch
MIT IS/DCNS Systems Development

[Standard disclaimer applies.]

------------------------------ cut here ------------------------------
#include <stdio.h>
#include <sys/types.h>
#include <sys/file.h>

#include <nlist.h>

struct nlist nl[] =
{
#define X_NFSUDP 0
    {"nfsudpcksum"},
    0,

Quote:};

int nnl = sizeof(nl)/sizeof(struct nlist) - 1;

main(argc, argv)
int argc;
register char *argv[];
{
    register int mem;
    register int i;
    unsigned long x;

    knlist(nl, nnl, sizeof(struct nlist));

    if ((mem = open ("/dev/kmem", O_RDWR, 0)) == -1) {
        perror ("open(mem)");
        return 3;
    }

#ifdef DEBUG
    for (i=0; i<nnl; i++) {
        printf("name=%s value=0x%08x", nl[i].n_name, nl[i].n_value);
        if (nl[i].n_value) {
            lseek(mem, nl[i].n_value, L_SET);
            read(mem, &x, sizeof(x));
            printf(" *value=0x%08x\n", x);
        } else
            printf("\n");
    }
#else
    if (nl[X_NFSUDP].n_value) {
        lseek(mem, nl[X_NFSUDP].n_value, L_SET);
        x = 1;
        write(mem, &x, sizeof(x));
    } else
        fprintf(stderr, "Unable to enable NFS UDP checksumming.\n");
#endif

    return 0;

Quote:}

 
 
 

UDP Checksum on NFS in AIX 3.2?

Post by John Maddaloz » Thu, 03 Dec 1992 04:07:54


 [stuff deleted]

Quote:

> >Anyone know if udp checksums can be turned on in AIX 3.2.2?
> >My SE is out of town and probably wouldn't know anyway :(

> We have also had occasion to need UDP checksumming (during a problem
> with a router).  Upon investigation we found that there is no standard
> way in AIX to do this.

There is now. Ask for the IX23727 fix. It has a utility called "nfso"
which allows you to turn NFS UDP cksums on/off.

Quote:> our experience, we opened a PMR requesting this feature be added to
> standard AIX.  So far we have had not action on our PMR.  

NFS UDP checksums on by default are addressed in IX24569.
That is in PTF U410189 and/or U409759.  I don't know why
you were not told this.

> Brandon

> --

> Empros Systems International    | (A division of Something)
> 2300 Berkshire Lane North       | Voice (612) 553-4529
> Plymouth, MN 55441-3694         | Fax   (612) 553-4018

Statements made here are my personal views and do not reflect
policy or commitments of IBM Corporation.

John Maddalozzo                    
IBM Advanced Workstation Systems

Austin, TX                         vnet:        JOHNMAD at AUSVM6
78758-3493                         phone:       +1 [512] 838-2686

 
 
 

1. UDP checksums in NFS packets

        Sorry for the somewhat broad cross-posting.

        It has been forcibly drawn to our attention that the version of
NFS running on our IBM RS-6000 (3.1.5) has the rather interesting
characteristic that it neglects to put a UDP checksum in outgoing NFS
packets.  This caused our (admittedly brain-dead) 3C501 PC ethernet
boards to accept mangled data and corrupt some databases.

        Enthusiastic pursuit of this problem with IBM eventually
resulted in our receiving a diskette with a program named lsnfsopt
which can be used to enable/disable the UDP checksumming of NFS
datagrams.

        It is relevant to note that the default state of not providing
UDP checksums as well as the inability to change this behaviour is in
violation of RFC1022 (sec. 4.1.3.4).

        We *STRONGLY* recommend that any of our customers who are using
RS-6000 machines as NFS file servers (and possibly other AIX boxes; we
have been unable to check) ask IBM for the lsnfsopt program to allow
you to fix this shortcoming.  Of course, any of the rest of you using
these machines are welcome to ask for the patch as well :-)

        In closing, it is nice to note that a severity 1 call to IBM
will, when it eventually reaches the developers, result in a new
program being created on the same day.  It would have been nicer, of
course, if it had been in time for the new 3.2 release ...

        Fred Whiteside
        Beame & Whiteside Software, Ltd.
--
Fred Whiteside   Chedoke-McMaster Hospitals, Hamilton, Ontario, Canada


2. YDL install guide?

3. UDP Checksum / NFS

4. Blade100 clock problems still ongoing?

5. NFS mount UDP Checksum error

6. Comp.Unix.Aix Digest, Volume 4, Number 51

7. NFS exporting a directory in AIX 3.2

8. Machines that can run AIX

9. mmap() with shared access fails over NFS using AIX 3.2 on RS 6000

10. Disk quotas on AIX 3.2 and NFS?

11. Direct printing from PC-NFS to AIX 3.2

12. HELP:AIX 3.2 NFS problems

13. NFS-exporting a directory in AIX 3.2