]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
TODO: connect to multiple IPs in parallel
authorDaniel Stenberg <daniel@haxx.se>
Sun, 23 Jun 2024 09:31:16 +0000 (11:31 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sun, 23 Jun 2024 12:31:46 +0000 (14:31 +0200)
Closes #13986

docs/TODO

index 4bf050810791ae0eef59caeb26282277800a79c5..52b0b483e350fb40e630460b1c3bcf8c5afd5515 100644 (file)
--- a/docs/TODO
+++ b/docs/TODO
@@ -28,6 +28,7 @@
  1.11 minimize dependencies with dynamically loaded modules
  1.12 updated DNS server while running
  1.13 c-ares and CURLOPT_OPENSOCKETFUNCTION
+ 1.14 connect to multiple IPs in parallel
  1.15 Monitor connections in the connection pool
  1.16 Try to URL encode given URL
  1.17 Add support for IRIs
 
  See https://github.com/curl/curl/issues/2734
 
+1.14 connect to multiple IPs in parallel
+
+ curl currently implements the happy eyeball algorithm for connecting to the
+ IPv4 and IPv6 alternatives for a host in parallel, sticking with the
+ connection that "wins". We could implement a similar algorithm per individual
+ IP family as well when there are multiple available addresses: start with the
+ first address, then start a second attempt N milliseconds after and then a
+ third another N milliseconds later. That way there would be less waiting when
+ the first IP has problems. It also improves the connection timeout value
+ handling for multiple address situations.
+
 1.15 Monitor connections in the connection pool
 
  libcurl's connection cache or pool holds a number of open connections for the