
BPF XDP DNS: оптимизации, которые мы заслужили (часть 1)
Ошибки в работе компонент DNS могут приводить к инцидентам: нагрузка за секунды возрастает на порядки, а с учётом политики обработки ошибок timeout и retry на клиентах — быстро приобретает лавинообразный характер. Такое случалось в истории эксплуатации нашего внутреннего рекурсивного контура DNS. Отказы в обслуживании создавались небольшим числом внешних запросов, которые обрабатывались параллельно с внутренними. Но в результате их расследования нам удалось преодолеть фундаментальные ограничения функционирования DNS‑сервисов.Меня зовут Олег Горохов, в Yandex Infrastructure я работаю в команде управления трафиком. В этой статье поделюсь, как мы оптимизировали процессы обработки в задаче классификации и изоляции DNS‑запросов — и в итоге исключили влияние внешних запросов на внутренние благодаря перераспределению ресурсов. 2 мкс — ровно столько сейчас требуется выбранному методу для ответа на запросы в прод‑контуре. Это на три порядка быстрее, если сравнивать с традиционными ответами обычных DNS‑серверов. Читать далее