Устройства Android 11 и выше получили поддержку безопасного протокола DNS-over-HTTP/3

2022-07-21 6747 комментарии
Компания Google добавила поддержку протокола DNS-over-HTTP/3 (DoH3) в Android 11 и выше для повышения конфиденциальности DNS-запросов и обеспечения оптимальной производительности

HTTP/3 — это третья крупная версия протокола HTTP, основанная на QUIC, мультиплексном транспортном протоколе, построенном на UDP, а не на TCP, как в предыдущих версиях.

Новый протокол устраняет проблемы блокировки начала очереди (Head-of-Line blocking), которая замедляет передачу данных в Интернете, когда пакет потерян или переупорядочен, что довольно часто встречается при перемещении со смартфоном и частом переключении соединений.

Ранее системы Android 9 и выше уже получили поддержку DNS-over-TLS (DoT), но использование данного протокола замедляет DNS-запросы из-за накладных расходов на шифрование.

Кроме того, DoT требует полного пересмотра нового соединения при смене сети. Напротив, QUIC может возобновить приостановленное соединение за один RTT (Round-trip time — время, необходимое для того, чтобы сигнал достиг пункта назначения).

В DoH3 решены многие проблемы производительности DoT, и, согласно тестам Google, достигается увеличение производительности на 24% для медианного времени запроса. В некоторых отдельных случаях производительность увеличилась до 44%.

DNS-over-HTTP/3 может помочь с ненадежными сетями, даже превосходя традиционный DNS благодаря механизмам упреждающего управления потоком, которые незамедлительно генерируют предупреждения о сбое доставки пакетов, а не ждут истечения времени ожидания.

Протокол DNS-over-HTTPS уже широко поддерживается многими провайдерами DNS для обеспечения повышенной конфиденциальности при выполнении DNS-запросов.

Так Google представил поддержку DNS-over-HTTP/3 Android и DNS-over-QUIC, предлагая данные протоколы в качестве стандарта, то мы можем увидеть широкое распространение этих технологий среди провайдеров DNS в ближайшее время.

Однако, в рамках запуска этой функции устройства Android будут использовать Google DNS и Cloudflare DNS, которые уже поддерживают DNS-over-QUIC.

В будущем Google планирует добавить поддержку других провайдеров DoH3 с помощью механизма Discovery of Designated Resolvers (DDR), который автоматически выбирает лучшего провайдера для вашей конкретной конфигурации.

Безопасная и легковесная реализация

Еще одним преимуществом DoH3 является использование языка программирования Rust, в результате чего получилась компактная система, состоящая из 1640 строк кода, использующих один поток выполнения вместо четырех в DoT.

В Google отмечают:

Мы создали механизм запросов, используя асинхронную структуру Tokio, чтобы одновременно обрабатывать новые запросы, события входящих пакетов, управляющие сигналы и таймеры. В C++ для этого, вероятно, потребовалось бы несколько потоков или тщательно продуманный цикл обработки событий.

В результате получается производительная низкоуровневая система с несколькими зависимостями, легковесная и использующая безопасный для памяти язык, который уменьшает количество ошибок, которые злоумышленники могут использовать для злоупотребления.

Развертывание

На момент написания статьи все устройства под управлением Android 11 и более поздних версий должны использовать DoH3 для Google DNS и Cloudflare DNS (скоро будет добавлено больше).

Кроме того, эту новую функцию получит подмножество устройств Android 10, поставщики которых раньше внедрили системные обновления Google Play.

Конечным пользователям не нужно предпринимать никаких действий для включения новой функции, так как Android сделает это автоматически.

© . По материалам Bleeping Computer
Комментарии и отзывы

Нашли ошибку?

Новое на сайте