Протоколы

Обновлено · Команда SomonVPN

XHTTP: туннель в форме обычных HTTP-запросов

XHTTP — транспорт экосистемы Xray, появившийся в 2024 году: он режет поток на короткие HTTP-запросы вместо одной длинной сессии. Короткие запросы легче переживают провалы связи и лучше держатся на слабом сигнале. В SomonVPN XHTTP есть в ссылке-подписке для Happ (iPhone, iPad, компьютер) и там часто оказывается лучшим вариантом на мобильных сетях; приложение для Android сейчас работает на Aminyx, Reality и TUIC.

У протоколов-туннелей есть общая уязвимость: долгое непрерывное соединение с одним IP-адресом само по себе выделяется на фоне обычного веб-сёрфинга. Оператору не обязательно понимать, что внутри, — достаточно замедлить или оборвать «слишком длинную» сессию. Операторские фильтры так и поступают: не разбирая содержимого, бьют по форме трафика.

XHTTP атакует именно эту слабость. Вместо одного длинного соединения — множество коротких HTTP-запросов, из которых складывается тот же туннель. Транспорт вырос из эксперимента SplitHTTP и в конце 2024 года стал частью Xray под именем XHTTP.

Год появления
2024
Транспорт
HTTP/1.1, HTTP/2, HTTP/3
Роль
Транспорт для VLESS
Есть в SomonVPN
Да, в ссылке для Happ

Транспорт, а не протокол

VLESS отвечает за то, что передаётся, XHTTP — за то, как это упаковано в сеть. Один и тот же VLESS-поток SomonVPN может доставлять через Reality, gRPC или XHTTP — содержимое туннеля от этого не меняется, меняется только внешний рисунок трафика.

Как поток превращается в веб-трафик

Исходящие данные клиент отправляет серией POST-запросов, входящие получает длинным потоковым ответом сервера — примерно так же ведёт себя вкладка с почтой или мессенджером, которая постоянно что-то дозагружает. Все запросы идут внутри обычного TLS. Наблюдателю доступна только картина «клиент активно работает с HTTPS-сайтом», а её блокировка означала бы поломку половины веба.

Когда XHTTP выигрывает у Reality

На части мобильных сетей региона долгие TCP-сессии периодически обрываются или теряют скорость — под это попадает и Reality. XHTTP из-за своей запросной природы переносит такие сети заметно спокойнее, поэтому в ссылке-подписке SomonVPN для Happ он стоит среди первых вариантов для мобильного интернета. Совместимость с HTTP-инфраструктурой даёт и запасной козырь: XHTTP умеет работать через CDN, когда прямой маршрут до сервера оказывается длинным.

Ограничения

За живучесть приходится платить: HTTP-обвязка добавляет служебных байтов на каждый кусок данных, а сборка потока из отдельных запросов немного увеличивает задержку. Для мессенджеров, браузера и видео это несущественно, для онлайн-игр с жёсткими требованиями к пингу — заметнее. Универсального победителя среди транспортов нет, поэтому SomonVPN не назначает XHTTP принудительно, а оставляет выбор клиенту по результатам реальной проверки сети.

Три HTTP-транспорта SomonVPN

КритерийXHTTPgRPCWebSocket-TLS
Форма трафикаСерии обычных HTTP-запросовДолгий HTTP/2-потокДолгое соединение после HTTP-upgrade
Устойчивость к обрыву долгих сессийВысокаяСредняяСредняя
Работа через CDNДаОграниченноДа
Накладные расходыВыше из-за HTTP-обвязкиУмеренныеУмеренные

Частые вопросы

XHTTP медленнее, чем Reality?

Накладные расходы у HTTP-упаковки выше, поэтому на свободной сети Reality обычно быстрее. Но XHTTP включается там, где выбор стоит не между «быстро» и «медленно», а между «работает» и «не работает».

Нужно ли включать XHTTP вручную в SomonVPN?

Нет. В Happ XHTTP уже есть в подписке среди других вариантов, и клиент сам переключится на него, если он лучше работает. В приложении для Android XHTTP сейчас не используется: там первым подключается наш Aminyx, затем Reality и TUIC.

Чем XHTTP отличается от WebSocket-TLS?

WebSocket после начального HTTP-запроса превращается в одно долгое соединение — и наследует уязвимость долгих сессий. XHTTP остаётся набором коротких и средних HTTP-запросов на всём протяжении работы, поэтому фильтры, бьющие по длительности, его почти не задевают.

Что такое SplitHTTP и куда он делся?

SplitHTTP — раннее имя этого транспорта в Xray. После доработки и расширения поддержки HTTP/2 и HTTP/3 его переименовали в XHTTP; в старых статьях и конфигурациях оба названия означают одну технологию. В подписке SomonVPN транспорт фигурирует уже под новым именем.

Попробуйте XHTTP в деле

В приложении SomonVPN протокол выбирается в один тап — или доверьте выбор Smart Connect.