Re: big_http_download sample localhost download


Brenton Chetty
 

Hi Robert

Thank you for your assistance. I managed to get qemu to begin downloading a file on localhost.
However, the file downloads up to a maximum of 2680 bytes, then it fails, and restarts the download.

Do you have any suggestions on why this only happens when downloading on localhost?

Regards
Brenton


On Wed, Nov 3, 2021 at 2:45 PM Lubos, Robert <Robert.Lubos@...> wrote:

Hi Brenton,

 

The DNS server configuration shouldn’t be an issue in this case, as we provide the IP address of the server – in such case the DNS query isn’t even sent as we already know the IP address.

 

I’ve reproduced the problem locally, and it turned out there was a problem with ARP retransmission handling, wrong source address was selected for the retransmission, I’ve posted a PR with a fix proposal:

https://github.com/zephyrproject-rtos/zephyr/pull/40038

 

Another thing is that the reason for the ARP retransmission even being sent  is the fact that e1000 driver does not process any incoming packets early after boot (for about 1 second). I have to little knowledge the particular device/driver to figure out why is this happening, but I’ve asked the question in the aforementioned PR, perhaps we’ll get some answers there.

 

Regards,

Robert

 

From: users@... <users@...> On Behalf Of Brenton Chetty via lists.zephyrproject.org
Sent: wtorek, 2 listopada 2021 20:11
To: users@...
Subject: [Zephyr-users] big_http_download sample localhost download

 

Hello,

I am attempting to download a file hosted on a localhost file server.

- I am hosting a file named "Zephyr" using "python3 -m http.server 8980"
- I am using a zeth interface and the "overlay-e1000.conf" to allow qemu to communicate with localhost. I successfully tested the LWM2M client example to ensure the connection was good.
- I can download the Zephyr file when I input "http://192.0.2.2:8980/zephyr" into a web browser.
- I attempted using the "overlay-ci.conf" file to perform the download.
    CONFIG_SAMPLE_BIG_HTTP_DL_URL="http://192.0.2.2:8980/zephyr"
 however I get the following error:
     Preparing HTTP GET request for http://192.0.2.2:8980/zephyr
     addrinfo @0x6da008: ai_family=1, ai_socktype=1, ai_protocol=6, sa_family=1, sin_port=1423
     Iteration 1 of 1:
     sock = 0
     [00:00:00.000,000] <inf> net_config: Initializing network
     [00:00:00.000,000] <inf> net_config: IPv4 address: 192.0.2.1
     [00:00:00.000,000] <inf> net_config: Running dhcpv4 client...
     Error: connect(sock, ai->ai_addr, ai->ai_addrlen)
     exit

I managed to get the example to download the online vmlinuz file, however I cannot get the sample to download via localhost.
Do you have any suggestions on what steps I could have missed?
Could it be a DNS issue? for downloading the online vmlinuz file I used 8.8.8.8 as CONFIG_DNS_SERVER1. For localhost, I left it at 192.0.2.2

With thanks
Brenton

Join users@lists.zephyrproject.org to automatically receive all group messages.