Skip to content
Snippets Groups Projects
  1. May 12, 2016
    • Marek Vavrusa's avatar
      daemon/worker: deduplicate inbound queries · e638f9fb
      Marek Vavrusa authored
      many clients do frequent retransmits of the query
      to avoid network losses and get better service,
      but then fail to work properly when a resolver
      answers SERVFAIL to some of them because of the
      time limit and some of them NOERROR. 
      it's also a good idea to avoid wasting time
      tracking pending tasks to solve the same thing.
      e638f9fb
  2. May 03, 2016
    • Marek Vavrusa's avatar
      daemon: out-of-order processing for TCP · c23edd06
      Marek Vavrusa authored
      * daemon now processes messages over TCP stream
      out-of-order and concurrently
      * support for TCP_DEFER_ACCEPT
      * support for TCP Fast-Open
      * there are now deadlines for TCP for idle/slow
      streams (to prevent slowloris; pruning)
      * there is now per-request limit on timeouts
      (each request is allowed 4 timeouts before bailing)
      * faster request closing, unified retry/timeout timers
      * rare race condition in timer closing fixed
      c23edd06
  3. Jan 30, 2016
  4. Dec 17, 2015
  5. Dec 08, 2015
  6. Dec 03, 2015
    • Marek Vavruša's avatar
      daemon/worker: deduplicate outbound queries · 6addcded
      Marek Vavruša authored
      worker can track outbound requests and if N resolutions want the same
      subrequest, only one will lead it and others will be notified when it
      finishes
      
      this massively reduces number of outbound requests for
      slow/unresponsive/low ttl requests
      6addcded
  7. Nov 27, 2015
  8. Oct 10, 2015
  9. Sep 23, 2015
  10. Jul 21, 2015
  11. Jul 19, 2015
  12. Jul 14, 2015
  13. Jul 08, 2015
  14. Jul 07, 2015
  15. Jul 05, 2015
  16. Jun 07, 2015
  17. Jun 05, 2015
  18. Jun 04, 2015
  19. May 05, 2015
    • Marek Vavruša's avatar
      daemon/io: fixed corrupted handles with exhausted TCP clients · 8002457b
      Marek Vavruša authored
      the TCP allowed parallel processing of multiple requests over
      one client socket, however if the client socket disconnected,
      it left the running tasks reading from bad handle
      now each task takes ownership of the handle until it is finished,
      only then it is returned to the loop and closed
      8002457b
  20. Apr 26, 2015
    • Marek Vavruša's avatar
      daemon/worker: reworked multiplexed worker · c7d62055
      Marek Vavruša authored
      * each query is assigned a task
      * each task contains request, some primitives and mempool
      * worker can process multiple tasks at once and
        offload I/O to event loop
      
      Not finished:
      
      * it depends on icmp/system timeouts, #22
      * tcp reads are going to be bad if the messages
        arrive fragmented #21
      c7d62055
  21. Apr 24, 2015
  22. Apr 10, 2015
  23. Mar 27, 2015
  24. Mar 18, 2015
  25. Jan 03, 2015
  26. Dec 31, 2014
  27. Dec 30, 2014
  28. Nov 12, 2014
  29. Oct 28, 2014
  30. Aug 08, 2014
  31. Aug 05, 2014
  32. Aug 04, 2014
  33. Jul 31, 2014
Loading