node/benchmark/dgram
Ruben Bridgewater 1c12dd6347
dgram: skip dns.lookup() for literal IP addresses
Every unconnected send(), and the implicit bind on first send,
resolved the destination through dns.lookup() even when it was
already a literal IP. The address resolves to itself, so the call is
redundant, and tools that instrument dns.lookup() record a lookup for
every datagram sent to an IP.

Skip the resolver for a literal IP of the socket's family and report
it on the next tick, keeping dns.lookup()'s asynchronous contract. A
custom lookup function is still consulted for every address.

Refs: https://github.com/DataDog/dd-trace-js/issues/2984
Signed-off-by: Ruben Bridgewater <ruben@bridgewater.de>
PR-URL: https://github.com/nodejs/node/pull/64133
Reviewed-By: Bryan English <bryan@bryanenglish.com>
Reviewed-By: Gürgün Dayıoğlu <hey@gurgun.day>
Reviewed-By: James M Snell <jasnell@gmail.com>
2026-06-30 13:07:49 +00:00
..
array-vs-concat.js
bind-params.js
multi-buffer.js
offset-length.js benchmark: adjust dgram offset-length len values 2025-09-24 14:11:58 +00:00
send-to-ip.js dgram: skip dns.lookup() for literal IP addresses 2026-06-30 13:07:49 +00:00
send-types.js dgram: restore buffer optimization in fixBufferList 2025-09-21 17:50:41 +00:00
single-buffer.js benchmark: fix destructuring in dgram/single-buffer 2026-03-16 18:16:39 +00:00