All checks were successful
continuous-integration/drone/push Build is passing
50 lines
5.2 KiB
Markdown
50 lines
5.2 KiB
Markdown
---
|
||
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) -->
|
||
|