Michael Brown
30717896f5
IB can't afford many RX buffers, because the MTU is so large. Reduce
the TCP window to compensate.
17 anos atrás
Michael Brown
096fa94f0c
Add support for TCP timestamps
17 anos atrás
Michael Brown
9dc6a1e678
Remove some obsolete stream-API files
17 anos atrás
Michael Brown
edded7546e
Limit xmit window to one MTU. (Path MTU discovery not yet
implemented; should be done at some point.)
17 anos atrás
Michael Brown
1136c19fa4
Updated tcp.c to provide a standardised data transfer interface.
17 anos atrás
Michael Brown
3e2c6b6736
pkbuff->iobuf changeover
Achieved via Perl using:
perl -pi -e 's/pk_buff/io_buffer/g; s/Packet buffer/I\/O buffer/ig; ' \
-e 's/pkbuff\.h/iobuf.h/g; s/pkb_/iob_/g; s/_pkb/_iob/g; ' \
-e 's/pkb/iobuf/g; s/PKB/IOB/g;'
17 anos atrás
Michael Brown
6d32f0e6e2
Changed to use the generic stream API.
18 anos atrás
Michael Brown
c014f607a8
Use total free memory as advertised window. This seems to be sufficient
to avoid drops even on slow NICs.
18 anos atrás
Michael Brown
5b00fbade3
Increase window size to 64kB. Line rate downloads on a 100Mbps link,
anyone?
18 anos atrás
Michael Brown
526d314266
Advertise a larger MSS to improve TCP performance.
18 anos atrás
Michael Brown
b91b9d3d88
Use whole bytes for the ACKED and RCVD portions of tcp_state; it
produces slightly smaller code.
18 anos atrás
Michael Brown
ce9819af27
Redefine TCP state to include "flags that have been sent" rather than
"flags that are currently being sent". This allows at least one special
case (checking that we haven't already sent a FIN in tcp_rx_fin()) to be
collapsed.
18 anos atrás
Michael Brown
61ed298bc7
Merge changes from mcb-tcp-fixes branch.
18 anos atrás
Michael Brown
89bcb57201
Update ftp.c to work with Nikhil's TCP stack.
Remove the now-totally-obsolete sockaddr_in field from tcp.h.
18 anos atrás
Nikhil Chandru Rao
d2bdf81505
Removed some bugs in TCP
18 anos atrás
Nikhil Chandru Rao
cb42e573a0
Added retransmissions to TCP
18 anos atrás
Michael Brown
467e9627cc
Added features that will be required for PXE UDP support.
Introduced struct sockaddr_tcpip, to simplify code that deals with
both IPv4 and IPv6 addresses.
Reorganised parts of tcpip.c and udp.c.
18 anos atrás
Nikhil Chandru Rao
9225f4edac
TCP support
18 anos atrás
Michael Brown
8637834031
Made the temporary buffer part of the TCP senddata() API, to ease the
transition away from uIP.
Prepared ipv4.c for transition away from uIP.
18 anos atrás
Michael Brown
f743de4858
Added tcp_kick(). This speed up LILO and GRUB booting by almost two
orders of magnitude.
18 anos atrás
Michael Brown
9e1becaf8a
Merge TCP aborted(), timedout() and closed() methods into a single
closed() method with a reason code.
18 anos atrás
Michael Brown
7af478b30d
Make tcp_connect() void; it will eventually have no failure case.
18 anos atrás
Michael Brown
824d6ffa7f
Header rearrangement.
I want to get to the point where any header in include/ reflects a
standard user-level header (e.g. a POSIX header), while everything that's
specific to gPXE lives in include/gpxe/. Headers that reflect a Linux
header (e.g. if_ether.h) should also be in include/gpxe/, with the same
name as the Linux header and, preferably, the same names used for the
definitions.
18 anos atrás
Michael Brown
c8a7133e9f
Added tcp_buffer, to give applications a zero-cost place to build data to
be transmitted.
18 anos atrás
Michael Brown
b44332eb7d
Split non-TCP portions of the stack out into ip.[ch].
Added set_ipaddr().
18 anos atrás
Michael Brown
a4a0244aa3
Moved uIP wrapper out of prototester.c and into proto/tcp.c.
18 anos atrás