[TIPC]: Optimize stream send routine to avoid fragmentation
authorAllan Stephens <allan.stephens@windriver.com>
Mon, 11 Jun 2007 00:25:24 +0000 (17:25 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Wed, 11 Jul 2007 05:06:12 +0000 (22:06 -0700)
commit05646c91109bfd129361d57dc5d98464ab6f6578
tree647639854d1ffb86820d2304419cbcb1bec21451
parent5eee6a6dc945acc5bf4da12956b2f698bbb102b9
[TIPC]: Optimize stream send routine to avoid fragmentation

This patch enhances TIPC's stream socket send routine so that
it avoids transmitting data in chunks that require fragmentation
and reassembly, thereby improving performance at both the
sending and receiving ends of the connection.

The "maximum packet size" hint that records MTU info allows
the socket to decide how big a chunk it should send; in the
event that the hint has become stale, fragmentation may still
occur, but the data will be passed correctly and the hint will
be updated in time for the following send.  Note: The 66060 byte
pseudo-MTU used for intra-node connections requires the send
routine to perform an additional check to ensure it does not
exceed TIPC"s limit of 66000 bytes of user data per chunk.

Signed-off-by: Allan Stephens <allan.stephens@windriver.com>
Signed-off-by: Jon Paul Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/tipc/tipc_port.h
net/tipc/link.c
net/tipc/port.c
net/tipc/port.h
net/tipc/socket.c