Files
digital-garden/dev/network/Client-Assisted Routing.md
Struchkov Mark 58127ccecd
All checks were successful
continuous-integration/drone/push Build is passing
Обновление
2025-01-28 20:21:30 +03:00

50 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
aliases:
- Клиент-ориентированная маршрутизация
tags:
- maturity/🌱
date: 2025-01-28
---
Клиент-ориентированная маршрутизация (англ. Client-Assisted Routing) — это стратегия, которая сочетает традиционные сетевые технологии ([[Geo Base DNS|Geo DNS]], Anycast) с данными о производительности, собираемыми на клиентской стороне.
Вместо того, чтобы полагаться исключительно на географическое местоположение пользователя, система анализирует фактическую производительность подключения, такую как:
- [[../architecture/Latency|Задержки]] (latency);
- Пропускная способность (bandwidth);
- Надежность маршрутов.
Этот подход позволяет направлять запросы пользователей на действительно оптимальный сервер, а не только на ближайший.
## Пример Dropbox
Dropbox внедрил гибридную архитектуру, которая обходит ограничения стандартного Geo DNS и обеспечивает более точное определение оптимального сервера. Основные элементы решения:
1. **Тестирование производительности на клиентской стороне**
- Клиентские приложения Dropbox (например, настольные и мобильные клиенты) измеряют задержки до различных серверов компании.
- На основе полученных данных выбирается сервер с наилучшей производительностью, что позволяет избежать ошибок, связанных с неверным определением ближайшего сервера через Geo DNS.
2. **Использование Anycast**
- Anycast позволяет одному IP-адресу быть связанным с несколькими серверами по всему миру. Пользовательский запрос автоматически направляется к серверу с наиболее коротким сетевым маршрутом.
3. **Сбор аналитики в реальном времени**
- Dropbox анализирует данные о задержках, загруженности серверов и сетевых условиях, чтобы постоянно обновлять маршруты.
- Система адаптируется к изменениям в интернет-маршрутах и помогает справляться с пиковыми нагрузками.
4. **Гибридный подход**
- Geo DNS остается базовым уровнем маршрутизации, но результаты корректируются данными клиентских тестов и Anycast.
### Кто еще использует аналогичные подходы?
1. **Netflix** Использует клиент-ориентированную маршрутизацию для выбора оптимальных серверов своей CDN. Приложения Netflix тестируют доступность и производительность серверов в фоновом режиме.
2. **Cloudflare**. Их CDN объединяет Anycast и данные о сетевых условиях, чтобы минимизировать задержки для пользователей.
3. **Akamai**. Один из крупнейших провайдеров CDN, который активно использует данные о производительности на клиентской стороне для маршрутизации запросов.
4. **Valve (Steam)**. Steam измеряет задержки до серверов для оптимального скачивания игр и улучшения игрового опыта.
5. **Google**. Для таких сервисов, как YouTube, Google использует Anycast и адаптивные алгоритмы маршрутизации, ориентированные на данные о производительности.
6. **Amazon AWS**. Сервис Global Accelerator направляет трафик через оптимальные маршруты с учетом производительности и доступности серверов
***
## Мета информация
**Область**:: [[../../meta/zero/00 Сети|00 Сети]]
**Родитель**::
**Источник**::
**Создана**:: [[2025-01-28]]
**Автор**::
### Дополнительные материалы
-
### Дочерние заметки
<!-- QueryToSerialize: LIST FROM [[]] WHERE contains(Родитель, this.file.link) or contains(parents, this.file.link) -->