A purpose-built proxy for the Linkerd service mesh. Written in Rust.
Go to file
Eliza Weisman 0e29e2f5cf proxy: Honor TTLs for DNS responses (#974)
Closes #711. Depends on #967.

This PR changes the proxy's `destination` module to honor the TTLs associated
with DNS lookups, now that bluejekyll/trust-dns#444 has been merged and we can
access this information from the Trust-DNS Resolver API. 

The `destination::background::DestinationSet` type has been modified so that, 
when a successful result is received for a DNS query, the DNS server will be 
polled again after the deadline associated with that query, rather than after
a fixed deadline. The fixed deadline is still used to determine when to poll
again for negative DNS responses or for errors.

Furthermore, Conduit now accepts an optional CONDUIT_PROXY_DNS_MIN_TTL 
environment variable that will configure a minimum TTL for DNS results. If the
deadline of a DNS response gives it a TTL shorter than the configured minimum,
Conduit will not poll DNS again until after that minimum TTL is elapsed. By
default, there is no minimum value set, as this feature is intended primarily
for when Conduit is run locally for development purposes.

Signed-off-by: Eliza Weisman <eliza@buoyant.io>
2018-06-01 12:17:48 -07:00
.github Add a newline to dco.yml (#254) 2018-02-01 15:16:02 -08:00
proxy proxy: Honor TTLs for DNS responses (#974) 2018-06-01 12:17:48 -07:00
CONTRIBUTING.md Add contributing doc and DCO file (#88) 2017-12-22 14:54:27 -08:00
Cargo.lock proxy: Honor TTLs for DNS responses (#974) 2018-06-01 12:17:48 -07:00
Cargo.toml proxy: Upgrade Conduit to use the new version of Tokio (#944) 2018-05-17 16:38:15 -07:00
DCO Add contributing doc and DCO file (#88) 2017-12-22 14:54:27 -08:00
LICENSE Introducing Conduit, the ultralight service mesh 2017-12-05 00:24:55 +00:00