curl / Mailing Lists / curl-library / Single Mail

curl-library

Re: libCurl does not send data using multi interface on high latency connections

From: Nicolás Bagnasco via curl-library <curl-library_at_cool.haxx.se>
Date: Fri, 14 Sep 2018 14:41:12 -0300

> I think you should consider trying with the latest curl release first before
> you spend a lot of time. Maybe you're seeing a problem we already fixed?

Ok, I've had cloned the curl repository and built the latest commit to
date and some things are different now!
asiohiper and ephiperfifo examples continue with the same problem, but
hiperfifo seems to work without problem now, so I will spend some time
trying to see what is the difference in the handling of the events
between those examples, considering that one of them works as
expected.

Also another thing to consider with ephiperfifo example is that when a
request works (with low delay), then, future requests will work no
matter the delay (within the same process).
Here is what I do:
1. set a delay of 50ms with tc
2. start the process ephiperfifo
3. send a request to "127.0.0.1:8124" (it will work because of the low latency)
4. change the delay to 150 ms with tc
5. send another request to "127.0.0.1:8124" (this time it will work
too, no matter the delay)

But, if the delay is high at the time I send the first request, then
that request will not work:
1. set a delay of 150ms with tc
2. start the process ephiperfifo
3. send a request to "127.0.0.1:8124" (this time it will not work)
4. change the delay to 50 ms with tc
5. send another request to "127.0.0.1:8124" (this time it will work,
because of the low latency)
6. change the delay to 150 ms with tc
7. send another request to "127.0.0.1:8124" (this time it will work,
no matter the delay)

So when a request has been successfully sent, then subsequent requests
will work no matter the delay.

> I also tried to run the test suite event-based ("./runtests.pl -e") with the
> added delay still enabled for localhost but I spotted no problems there
> either.

I haven't tried it yet, later I will try it and will update this thread.

> Are you usoing plain HTTP urls or what schemes do you test with?

The only url I am trying is "127.0.0.1:8124"

> I can't think of a single thing inside libcurl that has a 100ms timeout or
> expiry of anything!

Ok, thank you for the insight, I don't have the knowledge of the
internal working of the library.
What I will do now is trying to figure out the difference between the
example that works and those which don't.

Thank you.
-------------------------------------------------------------------
Unsubscribe: https://cool.haxx.se/list/listinfo/curl-library
Etiquette: https://curl.haxx.se/mail/etiquette.html
Received on 2018-09-14