[U-Boot] [PATCH 0/4] Network defrag
Robin Getz
rgetz at blackfin.uclinux.org
Mon Aug 10 21:51:51 CEST 2009
On Sat 8 Aug 2009 05:50, Ben Warren pondered:
> Allesandro,
>
> Alessandro Rubini wrote:
> > I finally fixed the defrag code, testing with NFS as well.
> > Didn't take performance figures, tough, for lack of time.
Checking out performance with tftp - server is Linux 2.6.27 located in
Germany, client (U-Boot running net/next) is located in the USA. Packets
fragmented, and arriving out of order.
U-Boot image (214268 bytes)
tftpblocksize download rate
(bytes) (ms) (bytes/second)
512 48,246 4,441
1024 24,482 8,752
1468 ( 1MTU) 17,243 12,426
2048 12,517 17,118
2948 ( 2MTU) 8,912 24,042
4428 ( 3MTU) 6,167 34,744
4096 6,608 32,425
5908 ( 4MTU) 4,840 44,270
7388 ( 5MTU) 4,042 53,010
8192 3,641 58,848
8868 ( 6MTU) 3,425 62,560
10348 ( 7MTU) 2,974 72,047
11828 ( 8MTU) 2,736 78,314
13308 ( 9MTU) 2,508 85,433
14788 (10MTU) 2,281 93,935
16000 2,233 95,955
16268 (11MTU) 2,174 98,559
So, that is 17-seconds (default - on the master), to 2 seconds. Wow - a 87%
reduction!
Doing the same with a larger image (default kernel + ext2 file system ==
12Meg), gets similar results - goes from 928,688 ms / 12,493 bytes/second
(yeah, that is 15 minutes with a tftpblocksize == 1468) to 107,626 ms /
107,866 bytes/second (that is under two minutes with a tftpblocksize ==
16000)... Again - an 88% reduction in time spent waiting...
So - I think this is well worth the effort for those people who want to use
tftp outside of a local network. (on a local network - things do not change
that drastically - An 18Meg file with default tftpblocksize (1468 bytes) took
5084ms to download, and with a tftpblocksize of 16268, it about half the
time - 2625 ms...
Thanks to Alessandro for putting it together.
Feel free to add my Signed-off (once the docs have been updated explaining
what this is all for).
-Robin
More information about the U-Boot
mailing list