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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
irda
[PATCH] x86_64: Make IRDA devices are not really ISA devices not depend on CONFIG_ISA
2005-04-16 15:24:56 -07:00
sctp
[SCTP] Make init & delayed sack timeouts configurable by user.
2005-06-28 13:24:23 -07:00
tc_act
[PKT_SCHED]: Introduce simple actions.
2005-04-24 20:10:16 -07:00
act_api.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ah.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
arp.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
atmclip.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ax25.h
[AX25]: endian-annotate ax25_type_trans()
2005-06-20 13:31:11 -07:00
checksum.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
compat.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
datalink.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dn.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dn_dev.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dn_fib.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dn_neigh.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dn_nsp.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dn_route.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dsfield.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
dst.h
[NET]: Shave sizeof(ptr) bytes off dst_entry
2005-04-19 20:46:37 -07:00
esp.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
flow.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
gen_stats.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
inet_common.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
inet_ecn.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
inetpeer.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ip_fib.h
[NETLINK]: fib_lookup() via netlink
2005-06-20 13:36:39 -07:00
ip_mp_alg.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ip_vs.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ipcomp.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ipconfig.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ipip.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ipv6.h
[IPV6]: remove more unused IPV6_AUTHHDR things.
2005-06-28 15:46:24 -07:00
ipx.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
iw_handler.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
lapb.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_c_ac.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_c_ev.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_c_st.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_conn.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_if.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_pdu.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_s_ac.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_s_ev.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_s_st.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
llc_sap.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
ndisc.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
neighbour.h
[NEIGHBOUR]: Remove unused fields in struct neigh_parms and neigh_table
2005-06-18 22:51:12 -07:00
netrom.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
p8022.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
pkt_act.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
pkt_cls.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
pkt_sched.h
[PKT_SCHED]: Cleanup qdisc creation and alignment macros
2005-07-05 14:15:09 -07:00
protocol.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
psnap.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
raw.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
rawv6.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
request_sock.h
[NET] rename struct tcp_listen_opt to struct listen_sock
2005-06-18 22:48:55 -07:00
rose.h
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
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
Linux-2.6.12-rc2
2005-04-16 15:20:36 -07:00
xfrm.h
[IPSEC]: Add xfrm_state_afinfo->init_flags
2005-06-20 13:19:41 -07:00