Lines Matching defs:window
88 /* SND.NXT, if window was not shrunk or the amount of shrunk was less than one
89 * window scaling factor due to loss of precision.
90 * If window has been shrunk, what should we make? It is not clear at all.
91 * Using SND.UNA we will fail to open window, SND.NXT is out of window. :-(
139 /* RFC2861. Reset CWND after idle period longer RTO to "restart window".
198 /* Determine a window scaling and initial window to offer.
212 /* If no clamp set the clamp to the max possible scaled window */
221 /* NOTE: offering an initial window larger than 32767
224 * we will truncate our initial window offering to 32K-1
225 * unless the remote has sent us a window scaling option,
227 * misinterpreting the window field as a signed quantity.
239 /* Set window scaling on max possible window */
251 /* Chose a new window to advertise, update state in tcp_sock for the
253 * value can be stuffed directly into th->window for an outgoing
263 /* Make the window 0 if we failed to queue the data because we
264 * are out of memory. The window is temporary, so we don't store
276 * window in time. --DaveM
281 /* Never shrink the offered window */
292 * scaled window.
303 /* If we advertise zero window, disable fast path. */
444 u8 ws; /* window scale, 0 to disable */
1361 th->window = htons(tcp_select_window(sk));
1364 /* RFC1323: The window in SYN & SYN/ACK segments
1367 th->window = htons(min(tp->rcv_wnd, 65535U));
1864 /* Limited by application or receiver window. */
1883 * current window. If not cwnd-limited then track the maximum number of
1884 * outstanding packets in the current window. (If cwnd-limited then we
2017 u32 partial, needed, window, max_len;
2019 window = tcp_wnd_end(tp) - TCP_SKB_CB(skb)->seq;
2022 if (likely(max_len <= window && skb != tcp_write_queue_tail(sk)))
2025 needed = min(skb->len, window);
2042 * congestion window rules? If so, return how many segments are allowed.
2049 /* Don't be strict about the congestion window for the final FIN. */
2107 /* Does at least the first segment of SKB fit into the send window? */
2227 /* If at least some fraction of a window is available,
2658 * window for us.
2965 * usable window based on the following constraints
2967 * 1. The window can never be shrunk once it is offered (RFC 793)
2975 * i.e. don't raise the right edge of the window until you can raise
2979 * since header prediction assumes th->window stays fixed.
2981 * Strictly speaking, keeping th->window fixed violates the receiver
2984 * window to always advance by a single byte.
2993 * then set the window to 0.
2995 * Otherwise, just prevent the window from shrinking
2998 * This prevents incremental opening of the window in the regime
3001 * those cases where the window is constrained on the sender side
3008 * of having a fixed window size at almost all times.
3010 * Below we obtain similar behavior by forcing the offered window to
3030 int full_space, window;
3043 /* Only allow window shrink if the sysctl is enabled and we have
3049 /* do not allow window to shrink */
3057 /* free_space might become our new window, make sure we don't
3063 * of the maximum allowed, try to move to zero-window, else
3066 * With large window, mss test triggers way too late in order
3067 * to announce zero window in time before rmem limit kicks in.
3076 /* Don't do rounding if we are using window scaling, since the
3077 * scaled window will not line up with the MSS boundary anyway.
3080 window = free_space;
3083 * Import case: prevent zero window announcement if
3086 window = ALIGN(window, (1 << tp->rx_opt.rcv_wscale));
3088 window = tp->rcv_wnd;
3089 /* Get the largest window that is a nice multiple of mss.
3091 * If our current window offering is within 1 mss of the
3094 * We also don't do any window rounding when the free space
3097 if (window <= free_space - mss || window > free_space)
3098 window = rounddown(free_space, mss);
3100 free_space > window + (full_space >> 1))
3101 window = free_space;
3104 return window;
3107 /* new window should always be an exact multiple of scaling factor */
3116 /* if free space is too low, return a zero window */
3124 /* new window should always be an exact multiple of scaling factor
3287 /* If receiver has shrunk his window, and skb is out of
3288 * new window, do not retransmit it. The exception is the
3289 * case, when window is shrunk to zero. In this case
3290 * our retransmit of one segment serves as a zero window probe.
3405 * we've sent it all or the congestion window limit is reached.
3717 /* XXX data is queued and acked as is. No buffer/window check */
3720 /* RFC1323: The window in SYN & SYN/ACK segments is never scaled. */
3721 th->window = htons(min(req->rsk_rcv_wnd, 65535U));
3793 /* limit the window selection if the user enforce a smaller rx buffer */
4076 /* This routine sends an ack and also updates the window. */
4129 * out of window data, because we have SND.NXT==SND.MAX...
4133 * out-of-date with SND.UNA-1 to probe window.
4167 /* Initiate keepalive or window probe from timer. */
4185 /* We are probing the opening of a window
4186 * but the window size is != 0
4211 /* A window probe timeout has occurred. If window is not closed send