Lines Matching defs:tcp_sock

132 struct tcp_sock {  struct
134 struct inet_connection_sock inet_conn;
135 u16 tcp_header_len; /* Bytes of tcp header to send */
136 u16 gso_segs; /* Max number of segs per GSO packet */
142 __be32 pred_flags;
149 u64 bytes_received; /* RFC4898 tcpEStatsAppHCThruOctetsReceived
153 u32 segs_in; /* RFC4898 tcpEStatsPerfSegsIn
156 u32 rcv_nxt; /* What we want to receive next */
157 u32 copied_seq; /* Head of yet unread data */
158 u32 rcv_wup; /* rcv_nxt on last window update sent */
159 u32 snd_nxt; /* Next sequence we send */
160 u32 segs_out; /* RFC4898 tcpEStatsPerfSegsOut
163 u64 bytes_acked; /* RFC4898 tcpEStatsAppHCThruOctetsAcked
167 struct u64_stats_sync syncp; /* protects 64bit vars (cf tcp_get_info()) */
169 u32 snd_una; /* First byte we want an ack for */
170 u32 snd_sml; /* Last byte of the most recently transmitted small packet */
171 u32 rcv_tstamp; /* timestamp of last received ACK (for keepalives) */
172 u32 lsndtime; /* timestamp of last sent data packet (for restart window) */
173 u32 last_oow_ack_time; /* timestamp of last out-of-window ACK */
175 u32 tsoffset; /* timestamp offset */
177 struct list_head tsq_node; /* anchor in tsq_tasklet.head list */
178 unsigned long tsq_flags;
181 struct {
187 } ucopy;
189 u32 snd_wl1; /* Sequence for window update */
190 u32 snd_wnd; /* The window we expect to receive */
191 u32 max_window; /* Maximal window ever seen from peer */
192 u32 mss_cache; /* Cached effective mss, not including SACKS */
194 u32 window_clamp; /* Maximal window to advertise */
195 u32 rcv_ssthresh; /* Current window clamp */
198 struct tcp_rack {
202 } rack;
203 u16 advmss; /* Advertised MSS */
204 u8 unused;
205 u8 nonagle : 4,/* Disable Nagle algorithm? */
206 thin_lto : 1,/* Use linear timeouts for thin streams */
207 thin_dupack : 1,/* Fast retransmit on first dupack */
208 repair : 1,
209 frto : 1;/* F-RTO (RFC5682) activated in CA_Loss */
210 u8 repair_queue;
211 u8 do_early_retrans:1,/* Enable RFC5827 early-retransmit */
212 syn_data:1, /* SYN includes data */
213 syn_fastopen:1, /* SYN includes Fast Open option */
214 syn_fastopen_exp:1,/* SYN includes Fast Open exp. option */
215 syn_data_acked:1,/* data in SYN is acked by SYN-ACK */
216 save_syn:1, /* Save headers of SYN packet */
217 is_cwnd_limited:1;/* forward progress limited by snd_cwnd? */
218 u32 tlp_high_seq; /* snd_nxt at the time of TLP retransmit. */
221 u32 srtt_us; /* smoothed round trip time << 3 in usecs */
222 u32 mdev_us; /* medium deviation */
223 u32 mdev_max_us; /* maximal mdev for the last rtt period */
224 u32 rttvar_us; /* smoothed mdev_max */
225 u32 rtt_seq; /* sequence number to update rttvar */
226 struct rtt_meas {
228 } rtt_min[3];
230 u32 packets_out; /* Packets which are "in flight" */
231 u32 retrans_out; /* Retransmitted packets out */
232 u32 max_packets_out; /* max packets_out in last window */
233 u32 max_packets_seq; /* right edge of max_packets_out flight */
235 u16 urg_data; /* Saved octet of OOB data and control flags */
236 u8 ecn_flags; /* ECN status bits. */
237 u8 keepalive_probes; /* num of allowed keep alive probes */
238 u32 reordering; /* Packet reordering metric. */
239 u32 snd_up; /* Urgent pointer */
244 struct tcp_options_received rx_opt;
249 u32 snd_ssthresh; /* Slow start size threshold */
250 u32 snd_cwnd; /* Sending congestion window */
251 u32 snd_cwnd_cnt; /* Linear increase counter */
252 u32 snd_cwnd_clamp; /* Do not allow snd_cwnd to grow above this */
253 u32 snd_cwnd_used;
254 u32 snd_cwnd_stamp;
255 u32 prior_cwnd; /* Congestion window at start of Recovery. */
256 u32 prr_delivered; /* Number of newly delivered packets to
258 u32 prr_out; /* Total number of pkts sent during Recovery. */
260 u32 rcv_wnd; /* Current receiver window */
261 u32 write_seq; /* Tail(+1) of data held in tcp send buffer */
262 u32 notsent_lowat; /* TCP_NOTSENT_LOWAT */
263 u32 pushed_seq; /* Last pushed seq, required to talk to windows */
264 u32 lost_out; /* Lost packets */
265 u32 sacked_out; /* SACK'd packets */
266 u32 fackets_out; /* FACK'd packets */
269 struct sk_buff* lost_skb_hint;
270 struct sk_buff *retransmit_skb_hint;
275 struct sk_buff_head out_of_order_queue;
278 struct tcp_sack_block duplicate_sack[1]; /* D-SACK block */
279 struct tcp_sack_block selective_acks[4]; /* The SACKS themselves*/
281 struct tcp_sack_block recv_sack_cache[4];
283 struct sk_buff *highest_sack; /* skb just after the highest
289 int lost_cnt_hint;
290 u32 retransmit_high; /* L-bits may be on up to this seqno */
292 u32 prior_ssthresh; /* ssthresh saved at recovery start */
293 u32 high_seq; /* snd_nxt at onset of congestion */
295 u32 retrans_stamp; /* Timestamp of the last retransmit,
298 u32 undo_marker; /* snd_una upon a new recovery episode. */
299 int undo_retrans; /* number of undoable retransmissions. */
300 u32 total_retrans; /* Total retransmits for entire connection */
302 u32 urg_seq; /* Seq of received urgent pointer */
303 unsigned int keepalive_time; /* time before keep alive takes place */
304 unsigned int keepalive_intvl; /* time interval between keep alive probes */
306 int linger2;
309 struct {
333 const struct tcp_sock_af_ops *af_specific; argument
359 static inline struct tcp_sock *tcp_sk(const struct sock *sk) in tcp_sk() argument