Re: MTU discovery considered harmful?

William "Chops" Westfield <BILLW@MATHOM.CISCO.COM> Fri, 20 April 1990 21:55 UTC

Received: from decwrl.dec.com by acetes.pa.dec.com (5.54.5/4.7.34) id AA17072; Fri, 20 Apr 90 14:55:07 PDT
Received: by decwrl.dec.com; id AA07737; Fri, 20 Apr 90 14:55:00 -0700
Date: Fri 20 Apr 90 14:54:36-PDT
From: William "Chops" Westfield <BILLW@MATHOM.CISCO.COM>
Subject: Re: MTU discovery considered harmful?
To: smb%ulysses.att.com@CLASH.CISCO.COM
Cc: mtudwg
In-Reply-To: <9004201953.AA21298@decwrl.dec.com>
Message-Id: <12583413460.24.BILLW@MATHOM.CISCO.COM>

    I know it's late in the game, but I'm becoming very concerned that
    MTU discovery may be fundamentally a Bad Idea.

I myself have wondered whether it's really necessary, though for
different reasons.  (I don't doubt that it is a good idea, I'm just not
sure that it is worth the effort being expended.)  My question is more
along the lines of whether or not a lot of the reasons that
"fragmentation was considered harmful" might not be true any more.  In
particular, router technology has progresses a great deal since that
paper was published, along with network interface technology in general
(it is no longer common for either routers or end systems to drop
back-to-back packets, for example).


    Let's look at a not-so-absurd limiting case:  FDDI rings at both
    LANs, and point-to-point links across a regional net.  FDDI
    uses a 4K MTU; serial lines, being HDLC, have more or less arbitrary
    MTUs, and will likely be set to 4K once FDDI becomes common.  Current
    TCPs (at least, many of them) have default window sizes of 4K.

You have some invalid assumptions.  I doubt that anyone will run across
FDDI with a 4K window.  Experiments are already being done with window
sizes larger than 64K (window scaling), a necessary extension when you
want to run nets with a delay bandwidth product greated than 64kbytes
(this includes T1 satallite links and T3 TERRESTRIAL (!) links, if I
remember correctly).  HDLC does NOT have arbitrary MTUs - indeed, the
rest of your message makes more of an argument for using small MTUs on
serial links (and doing MTU discovery) than for not doing MTU discovery.

In a sense, anyone using 56kbps links to connect FDDI rings deserves to
have less than ideal functionality.  Having a small (1500?, 1000?) MTU
on the slow links, and the end system use that MTU is a much better
solution than having the routers fragment packets.  Having the hosts use
a 576 byte MTU on all local nets is better than using the local MTU
connection (which is your point), but we need to do better than that.

Remember that if you have serval FDDI rings connected together then you
REALLY REALLY do want to use the full available MTU.  For that matter,
you really want to use a 1500 byte MTU for ethernets connected by FDDI,
or even ethernets connected by T1.


    For example, according to some measurements I've done recently, on
    a Cisco router the fixed overhead is on the order of 2 ms, plus the
    cost per byte -- for a 40-byte TCP packet, that's 5.7 ms.)

Hmm.  You must be running very old software, or running without the
routing cache initialized.  Our numbers have the fixed overhead at more
like 80 uS - that's where the famous 12000 pps number comes from.

Bill Westfield
cisco Systems.
-------