TCP: send full initial window when timestamps are in use
The fastpath in tcp_output tries to send out full segments, and avoid sending partial segments by comparing against the static t_maxseg variable. That value does not consider tcp options like timestamps, while the initial window calculation is using the correct dynamic tcp_maxseg() function. Due to this interaction, the last, full size segment is considered too short and not sent out immediately. Reviewed by: tuexen MFC after: 2 weeks Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D26478
This commit is contained in:
parent
43e76bafcd
commit
7b30b9f648
|
@ -80,6 +80,8 @@ struct tcphdr {
|
|||
u_short th_urp; /* urgent pointer */
|
||||
};
|
||||
|
||||
#define PADTCPOLEN(len) ((((len) / 4) + !!((len) % 4)) * 4)
|
||||
|
||||
#define TCPOPT_EOL 0
|
||||
#define TCPOLEN_EOL 1
|
||||
#define TCPOPT_PAD 0 /* padding after EOL */
|
||||
|
|
Loading…
Reference in New Issue