net: tftp: Add client support for RFC 7440
authorRamon Fried <rfried.dev@gmail.com>
Sat, 18 Jul 2020 20:31:46 +0000 (23:31 +0300)
committerTom Rini <trini@konsulko.com>
Wed, 5 Aug 2020 03:30:02 +0000 (23:30 -0400)
commitcc6b87ecaa96325577a8fafabc0d5972b816bc6c
tree627f2154947c30d57ecb1357c92935939419d367
parent5cc7df7ebaccc0d02e3322a35b2dcb47951bc9ae
net: tftp: Add client support for RFC 7440

Add support for RFC 7440: "TFTP Windowsize Option".

This optional feature allows the client and server
to negotiate a window size of consecutive blocks to send as an
alternative for replacing the single-block lockstep schema.

windowsize can be defined statically during compilation by
setting CONFIG_TFTP_WINDOWSIZE, or defined in runtime by
setting an environment variable: "tftpwindowsize"
If not defined, the windowsize is set to 1, meaning that it
behaves as it was never defined.

Choosing the appropriate windowsize depends on the specific
network topology, underlying NIC.
You should test various windowsize scenarios and see which
best work for you.

Setting a windowsize too big can actually decreases performance.

Signed-off-by: Ramon Fried <rfried.dev@gmail.com>
Reviewed-by: Marek Vasut <marex@denx.de>
README
net/Kconfig
net/tftp.c