kernel-hacking-2024-linux-s.../include/net
David S. Miller c1b4a7e695 [TCP]: Move to new TSO segmenting scheme.
Make TSO segment transmit size decisions at send time not earlier.

The basic scheme is that we try to build as large a TSO frame as
possible when pulling in the user data, but the size of the TSO frame
output to the card is determined at transmit time.

This is guided by tp->xmit_size_goal.  It is always set to a multiple
of MSS and tells sendmsg/sendpage how large an SKB to try and build.

Later, tcp_write_xmit() and tcp_push_one() chop up the packet if
necessary and conditions warrant.  These routines can also decide to
"defer" in order to wait for more ACKs to arrive and thus allow larger
TSO frames to be emitted.

A general observation is that TSO elongates the pipe, thus requiring a
larger congestion window and larger buffering especially at the sender
side.  Therefore, it is important that applications 1) get a large
enough socket send buffer (this is accomplished by our dynamic send
buffer expansion code) 2) do large enough writes.

Signed-off-by: David S. Miller <davem@davemloft.net>
2005-07-05 15:24:38 -07:00
..
bluetooth
irda
sctp [SCTP] Make init & delayed sack timeouts configurable by user. 2005-06-28 13:24:23 -07:00
tc_act
act_api.h
act_generic.h [PKT_SCHED]: Fixup simple action define. 2005-05-19 12:42:39 -07:00
addrconf.h [IPV6]: net/addrconf.h needs to include linux/in6.h earlier 2005-05-03 22:17:18 -07:00
af_unix.h
ah.h
arp.h
atmclip.h
ax25.h [AX25]: endian-annotate ax25_type_trans() 2005-06-20 13:31:11 -07:00
checksum.h
compat.h
datalink.h
dn.h
dn_dev.h
dn_fib.h
dn_neigh.h
dn_nsp.h
dn_route.h
dsfield.h
dst.h
esp.h
flow.h
gen_stats.h
icmp.h [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
ieee80211.h [PATCH] ieee80211.h build fix 2005-06-28 22:45:32 -07:00
if_inet6.h
inet_common.h
inet_ecn.h
inetpeer.h
ip.h [SCTP] Add support for ip_nonlocal_bind sysctl & IP_FREEBIND socket option 2005-06-13 15:12:33 -07:00
ip6_checksum.h
ip6_fib.h [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
ip6_route.h [IPV6]: V6 route events reported with wrong netlink PID and seq number 2005-06-21 13:51:04 -07:00
ip6_tunnel.h
ip_fib.h [NETLINK]: fib_lookup() via netlink 2005-06-20 13:36:39 -07:00
ip_mp_alg.h
ip_vs.h
ipcomp.h
ipconfig.h
ipip.h
ipv6.h [IPV6]: remove more unused IPV6_AUTHHDR things. 2005-06-28 15:46:24 -07:00
ipx.h
iw_handler.h
lapb.h
llc.h
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc_conn.h
llc_if.h
llc_pdu.h
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc_sap.h
ndisc.h
neighbour.h [NEIGHBOUR]: Remove unused fields in struct neigh_parms and neigh_table 2005-06-18 22:51:12 -07:00
netrom.h
p8022.h
pkt_act.h
pkt_cls.h
pkt_sched.h [PKT_SCHED]: Cleanup qdisc creation and alignment macros 2005-07-05 14:15:09 -07:00
protocol.h
psnap.h
raw.h
rawv6.h
request_sock.h [NET] rename struct tcp_listen_opt to struct listen_sock 2005-06-18 22:48:55 -07:00
rose.h
route.h [PATCH] smp_processor_id() cleanup 2005-06-21 18:46:13 -07:00
sch_generic.h [PKT_SCHED]: Cleanup qdisc creation and alignment macros 2005-07-05 14:15:09 -07:00
scm.h
slhc_vj.h [NET]: Remove __ARGS from include/net/slhc_vj.h 2005-07-05 15:12:04 -07:00
snmp.h [PATCH] smp_processor_id() cleanup 2005-06-21 18:46:13 -07:00
sock.h [TCP]: Simplify SKB data portion allocation with NETIF_F_SG. 2005-07-05 15:17:25 -07:00
syncppp.h
tcp.h [TCP]: Move to new TSO segmenting scheme. 2005-07-05 15:24:38 -07:00
tcp_ecn.h [NET] Rename open_request to request_sock 2005-06-18 22:47:21 -07:00
transp_v6.h
udp.h [PATCH] update Ross Biro bouncing email address 2005-05-05 16:36:49 -07:00
x25.h [X25]: Fast select with no restriction on response 2005-06-22 22:16:17 -07:00
x25device.h
xfrm.h [IPSEC]: Add xfrm_state_afinfo->init_flags 2005-06-20 13:19:41 -07:00