Interactions between Path MTU Discovery and TCP window size

mogul (Jeffrey Mogul) Tue, 24 July 1990 17:55 UTC

Received: by (5.54.5/4.7.34) id AA28555; Tue, 24 Jul 90 10:55:25 PDT
From: mogul (Jeffrey Mogul)
Message-Id: <>
Date: 24 Jul 1990 1055-PDT (Tuesday)
To: mtudwg
Subject: Interactions between Path MTU Discovery and TCP window size

I sent this out over TCP-IP last week to see if anyone had any comments,
and so far I've seen no replies.  I encourage you all (and especially
you, Van) to let me know if I'm saying anything wrong, because if I
don't hear from anyone I will assume that the current draft, with
these paragraphs inserted, is ready for submission to the IESG.

(The rest of the document is draft-ietf-mtudisc-pathmtu-01.txt at
the usual place.)


    (To be inserted at the end of section 6.4, "TCP layer actions"):
    Modern TCP implementations incorporate ``congestion advoidance''
    and ``slow-start'' algorithms to improve performance@cite[Jacobson1988].
    Unlike a retransmission caused by a TCP retransmission timeout, a
    retransmission caused by a Datagram Too Big message should not
    change the congestion window.  It should, however, trigger the
    slow-start mechanism (i.e., only one segment should be retransmitted
    until acknowledgements begin to arrive again).

    TCP performance can be reduced if the sender's maximum window size
    is not an exact multiple of the segment size in use (this is not
    the congestion window size, which is always a multiple of the
    segment size).  In many system (such as those derived from 4.2BSD),
    the segment size is often set to 1024 octets, and the maximum
    window size (the ``send space'') is usually a multiple of 1024
    octets, so the proper relationship holds by default.  If PMTU
    Discovery is used, however, the segment size may not be a
    submultiple of the send space, and it may change during a
    connection; this means that the TCP layer may need to change the
    transmission window size when PMTU Discovery changes the PMTU
    value.  The maximum window size should be set to the greatest
    multiple of the segment size (PMTU - 40) that is less than or equal
    to the sender's buffer space size.
    PMTU Discovery does not affect the value sent in the TCP MSS option,
    because that value is used by the other end of the connection,
    which may be using an unrelated PMTU value.