[U-Boot] [PATCH v11 0/3] Why netboot:
Joe Hershberger
joe.hershberger at ni.com
Tue Jun 12 21:21:10 UTC 2018
Hi Duncan,
I tried a test of applying this series and the first patch doesn't
apply cleanly and checkpatch complains about Missing or malformed
SPDX-License-Identifier.
Can you rebase on top of the current upstream master and resend?
On Sun, May 20, 2018 at 6:41 PM, <DH at synoia.com> wrote:
> From: Duncan Hare <DuncanCHare at yahoo.com>
Is there a reason you are not using (what appears to be) your company
email address in your git configuration?
>
> Central management, including logs and change control,
> coupled with with enhanced security and unauthorized
> change detection and remediation by exposing a
> small attack surface.
>
> Why TCP with Selective Acknowledgement:
>
> Currently file transfer are done using tftp or NFS both
> over udp. This requires a request to be sent from client
> (u-boot) to the boot server.
>
> For a 4 Mbyte kernel, with a 1k block size this requires
> 4,000 request for a block.
>
> Using a large block size, one greater than the Ethernet
> maximum frame size limitation, would require fragmentation,
> which u-boot supports. However missing fragment recovery
> requires timeout detection and re-transmission requests
> for missing fragments.
>
> UDP is ideally suited to fast single packet exchanges,
> inquiry/response, for example dns, becuse of the lack of
> connection overhead.
>
> UDP as a file transport mechanism is slow, even in low
> latency networks, because file transfer with udp requires
> poll/response mechanism to provide transfer integrity.
>
> In networks with large latency, for example: the internet,
> UDP is even slower. What is a 30 second transfer on a local
> boot server and LAN increase to over 3 minutes, because of
> all the requests/response traffic.
>
> This was anticipated in the evolution of the IP protocols
> and TCP was developed and then enhanced for high latency high
> bandwidth networks.
>
> The current standard is TCP with selective acknowledgment.
>
> In our testing we have reduce kernel transmission time to
> around 0.4 seconds for a 4Mbyte kernel, with a 100 Mbps
> downlink.
>
> Why http and wget:
>
> HTTP is the most efficient file retrieval protocol in common
> use. The client send a single request, after TCP connection,
> to receive a file of any length.
>
> WGET is the application which implements http file transfer
> outside browsers as a file transfer protocol. Versions of
> wget exists on many operating systems.
>
> Changes in v11:
> Add TCP with Selective Acknowledgement (SACK)
> Adding wget
>
> Duncan Hare (3):
> Adding TCP and wget into u-boot
> Adding TCP
> Add wget, for fast file transfer.
>
> cmd/Kconfig | 7 +
> cmd/net.c | 13 +
> include/net.h | 15 +-
> include/net/tcp.h | 227 +++++++++++++++++
> include/net/wget.h | 19 ++
> net/Kconfig | 6 +
> net/Makefile | 2 +
> net/net.c | 79 +++++-
> net/ping.c | 9 +-
> net/tcp.c | 700 +++++++++++++++++++++++++++++++++++++++++++++++++++++
> net/wget.c | 418 ++++++++++++++++++++++++++++++++
> 11 files changed, 1475 insertions(+), 20 deletions(-)
> create mode 100644 include/net/tcp.h
> create mode 100644 include/net/wget.h
> create mode 100644 net/tcp.c
> create mode 100644 net/wget.c
>
> --
> 2.11.0
>
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot
More information about the U-Boot
mailing list