HomeFreeBSD

tcp: Don't "negotiate" MSS.

Description

tcp: Don't "negotiate" MSS.

_NO_ OSes actually "negotiate" MSS.

RFC 879:
"... This Maximum Segment Size (MSS) announcement (often mistakenly
called a negotiation) ..."

This negotiation behaviour was introduced 11 years ago by r159955
without any explaination about why FreeBSD had to "negotiate" MSS:

In syncache_respond() do not reply with a MSS that is larger than what
the peer announced to us but make it at least tcp_minmss in size.

Sponsored by:   TCP/IP Optimization Fundraise 2005

The tcp_minmss behaviour is still kept.

Syncookie fix was prodded by tuexen, who also helped to test this
patch w/ packetdrill.

Reviewed by: tuexen, karels, bz (previous version)
MFC after: 2 week
Sponsored by: Microsoft
Differential Revision: https://reviews.freebsd.org/D12430

Details

Committed
sepheSep 27 2017, 5:52 AM
Reviewer
tuexen
Differential Revision
D12430: tcp: Don't "negotiate" MSS.
Parents
rS324049: hyperv/hn: Fix UDP checksum offload issue in Azure.
Branches
Unknown
Tags
Unknown