2

I realise this might be an impossible question to answer, but here goes:

I have an embedded board that I've written a load of software for; this board can be sent a new firmware image (image here is not a picture, but an update of the software that will run on the board) via a web browser. The web browser is run on an ordinary computer and is served by the embedded board. So, you open a browser on a computer, type in the IP address of the embedded board, and the embedded board serves up a page to allow you to choose a new firmware image for this embedded board.

Now, I've been developing this on Linux; I mean the software for the embedded board and therefore the browser I have used has been on my Linux machines. When I try to repeat this on Windows it is dog slow!

Looking at it with Wireshark, the Windows machine sends out a packet containing new firmware data, the embedded board sends out an ACK 400μs (four hundred microseconds) later. The Windows machine immediately sends out the next packet and the ACK, again, is returned again after a few hundred microseconds.

However, the next packet after this four-packet burst is sent five seconds later, and the rapid four packet sequence is repeated.

This continues, with four-packet bursts then five-second gaps. When you have a file of 586K, this makes it painfully slow.

If you send the file using a Linux machine, it takes a few seconds to send the whole image.

I have tried his on two Windows machines and two Linux machines with identical results. I haven't used Windows "properly" in years and I don't know my way around it at all. I'm wondering whether it might be a firewall issue (but then why would it let stuff through, albeit slowly?).

Can anyone throw any light on this or make any suggestions on why it would be please? I'd love to be able to tell my customer just to use Linux, but I don't think that would go down well! ;~)

Edit:

I've added pcap files in case they help. Please note, I stopped the Windows one part way through as it's so slow. The Linux one completes the file transfer. Windows Slow upload pcap

Linux fast upload pcap

3
  • It might help if you told us what browsers you are using (at least on Windows) and what version(s) of Windows you are using. Jul 18, 2015 at 22:56
  • Sorry! It's Firefox on both 39 on Windows and 38 on Linux.
    – DiBosco
    Jul 19, 2015 at 9:14
  • Just to state the obvious: If you don't find the real answer to this, they could always get something like a Raspberry Pi just to do the downloads with it. Hardware used to come with all sorts of proprietary interfaces. You could still do whatever user magic is required to make/configure the download on the normal client OS and just pass it to the Pi for the download.
    – Joe
    Jul 20, 2015 at 22:46

1 Answer 1

1

OK, sussed it. I was the TCP Win size in my software. I increased it and it works fine on both platforms now. Just in case anyone else comes across this sort of thing...

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .