• Integrating against the RequestRouter Alt-Svc Hints API

    Version 0.4 of RequestRouter introduces a new feature - an API designed to give edge devices (such as delivery appliances) hints to allow them to generate an RFC 7838 Alt-Svc header to further optimise routing for clients located behind a DNS server that does not support the EDNS Client Subnet (ECS) extension.

    This documentation provides a reference implementation, allowing an OpenResty based edge device to connect back to the Alt-Svc Hints API, whilst minimising the potential latency impact to some extent.

  • RequestRouter V0.1

    Version: 0.1


    Project Info

    Request Router is a Request Routing Engine who's default behaviour is as a georouting DNS Load Balancer.

    Features:

    • Geolocation cost based routing (with overrides)
    • Protocol Aware
    • Delivery Status/Load Aware
    • edns support
    • Wildcard support


    Release Notes

    Version 0.1 effectively takes my original OnionRoute codebase and refactors it to focus on DNS based routing rather than HTTP Redirect routing and introduces some performance enhancements

    • RR-25 - Implemented internal caches
    • RR-34 - Implemented pre-caching of specific subnets as a config option
    • RR-40 - Ability to ignore routes on a per country and FQDN basis

  • RequestRouter V0.2

    Version: 0.2


    Project Info

    Request Router is a Request Routing Engine who's default behaviour is as a georouting DNS Load Balancer.

    Features:

    • Geolocation cost based routing (with overrides)
    • Protocol Aware
    • Delivery Status/Load Aware
    • edns support
    • Wildcard support
    • HTTP Redirect (302) Routing Support
    • Content Optimised Routing in HTTP Routing


    Release Notes

    Version 0.2 re-introduced HTTP Redirect based routing along with other bugfixes and improvements (including factoring the requested asset into HTTP redirect based routing in order to improve the cache hit rate on reverse proxy based edges)

    • RR-35 - New Feature: Implemented Content Preferential Routing
    • RR-37 - New Feature: HTTP Redirect Routing Support
    • RR-44 - Bugfix: Zero'ed routes can be overridden by ancestor costs
    • RR-46 - New Feature: fqdn-ignore-routes accepts a wildcard
    • RR-47 - New Feature: NO_LEAVE_COUNTRY flag introduced
    • RR-48 - New Feature: NO_LEAVE_LOCATION behaviour optimised

  • RequestRouter V0.3

    Version: 0.3


    Project Info

    Request Router is a Request Routing Engine who's default behaviour is as a georouting DNS Load Balancer.

    Features:

    • Geolocation cost based routing (with overrides)
    • Protocol Aware
    • Delivery Status/Load Aware
    • edns support
    • Wildcard support
    • HTTP Redirect (302) Routing Support
    • Content Optimised Routing in HTTP Routing


    Release Notes

    Version 0.3 was a bugfix release to resolve an issue where the DNS routing engine may spam syslog under certain circumstances

    • RR-56 - Bugfix: RequestRouter spams syslog following a generation change

  • RequestRouter V0.4

    Version: 0.4


    Project Info

    Request Router is a Request Routing Engine who's default behaviour is as a georouting DNS Load Balancer.

    Features:

    • Geolocation cost based routing (with overrides)
    • Protocol Aware
    • Delivery Status/Load Aware
    • edns support
    • Wildcard support
    • HTTP Redirect (302) Routing Support
    • Content Optimised Routing in HTTP Routing
    • Aids Delivery Devices in generating Alt-Svc headers to further optimise routing

    Release Notes

    Version 0.4 implements new features and fixes various bugs

    New Features

    • RR-55 - Status checks can run as a SystemD service
    • RR-57 - Ability to override numresults on a per domain basis
    • RR-65 - Alt-Svc Hints API

    Bugs Fixed

    • RR-61 - Perm cache doesn't always flush correctly
    • RR-62 - Ignored routes should not be written into perm cache
    • RR-63 - Race: A combination of RR-61 and RR-62 being triggered can lead to an incorrect resultset
    • RR-67 - CLI NO_LEAVE_LOCATION incorrectly limits result set
    • RR-68 - CLI fqdn_settings throws exception