IP fragmentation (DF) and ip_no_pmtu_disc in 2.2 vs 2.4

From: JP Navarro (navarro@mcs.anl.gov)
Date: Fri Dec 01 2000 - 13:29:09 EST

  • Next message: Phillip Ezolt: "Re: Alpha SCSI error on 2.4.0-test11"

    In 2.2.17 when /proc/sys/net/ipv4/ip_no_pmtu_disc is 0/false we're
    seeing outbound udp packets with the IP DF (don't fragment) bit clear.
    With 2.4.0-test11, when ip_no_pmtu_disc is still 0/false we're seeing
    outbound udp packets with the IP DF bit set. Is this change in default
    behavior a fix or a break?

    [start non expert thinking]
    ip_no_pmtu_disc = 0/false means that we DO want MTU discovery.
    ip_no_pmtu_disc = 1/true means that we DON't want MTU discovery.
    to do MTU discovery you want DF set, so if fragmenting is necessary to
    reach your target you get an unreachable error and can try smaller MTUs.

    So, it appears that 2.4 fixed a problem with 2.2, correct?
    [stop non expert thinking]

    The problem that led us to notice this behavior was:

    Intel PXE uses tftp to download boot images and discards IP packets with
    the DF bit set; so a tftpd server on 2.4 with the default
    ip_no_pmtu_disc set to 0/false can't serve tftp to PXE. Changing
    ip_no_pmtu_disc to 1/true "fixes it". One problem is that we'd rather
    have our tftpd server w/ 2.4 configured for mtu discovery.

    We've tried to setsockopt(sock, SOL_IP, IP_MTU_DISCOVER, ...) with the
    IP_PMTUDISC_DONT option but can't make it work. How does one change MTU
    discovery and/or the don't fragment bit on a single socket?

    JP Navarro

    -- 
    John-Paul Navarro                                      (630) 252-1233
    Mathematics & Computer Science Division
    Argonne National Laboratory                       navarro@mcs.anl.gov
    Argonne, IL 60439                     http://www.mcs.anl.gov/~navarro
    

    - 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 : Fri Dec 01 2000 - 13:32:37 EST