Tunnel 0.12.0#
Tunnel 0.12.0 — крупное обновление Smart Connect, Контроллера сети, Белых Списков и системы восстановления VPN-подключения.
Версия направлена на более предсказуемую работу приложения в мобильных сетях, улучшение автоматических переходов между режимами, сохранение подключения при временной потере связи и более понятное отображение сетевых событий.
Главное#
Обновлён Smart Connect#
Smart Connect стал точнее учитывать текущее состояние сети и активного VPN-подключения.
Улучшены сценарии:
- запуска VPN с главного экрана;
- подключения через Quick Tile;
- работы AutoConnect;
- запуска через действия из уведомлений;
- восстановления предыдущего подключения;
- переключения между обычным режимом и Белыми Списками;
- работы с серверами из подписок;
- временной недоступности отдельных сетевых ресурсов.
Главный экран, Quick Tile, AutoConnect и другие способы запуска теперь используют более согласованную логику выбора режима и маршрута.
Улучшено определение режима подключения#
Перед подключением Tunnel точнее оценивает доступность обычного интернета и ресурсов Белых Списков. Мы назвали технологию определения Underlay check.
Приложение аккуратнее различает:
- обычную доступность интернета;
- доступность ресурсов Белых Списков;
- временную недоступность проверочных ресурсов;
- полную потерю мобильной сети;
- нестабильное состояние подключения;
- доступность подходящих серверов.
Последний использованный сервер учитывается вместе с текущим состоянием сети и не должен самостоятельно определять неподходящий режим подключения.
Обновлён Контроллер сети#
Контроллер сети стал лучше управлять автоматическими переходами, восстановлением маршрута и перебором серверов.
Улучшены:
- обработка временных сетевых сбоев;
- переключение между серверами одного режима;
- переход между ordinary и БС;
- контроль активного VPN-маршрута;
- работа при смене underlying-сети;
- защита от параллельных переключений;
- восстановление после полной потери мобильного сигнала;
- координация с Smart Connect.
Контроллер сети аккуратнее разделяет временные проблемы сети, недоступность отдельного сервера и необходимость смены режима.
Белые Списки#
Улучшен БС-режим#
Доработана работа Белых Списков в ручных и автоматических сценариях.
Улучшены:
- ручное включение БС;
- автоматический переход на БС;
- возврат к обычному режиму;
- запуск БС через подписки;
- работа БС при смене мобильной сети;
- переключение между БС-серверами;
- восстановление БС-подключения;
- взаимодействие БС со Smart Connect.
Ручной выбор режима сохраняет приоритет при первоначальном запуске, но не мешает приложению в дальнейшем реагировать на реальные изменения сети.
Улучшен БС-детектор#
БС-детектор стал точнее определять ситуации, в которых обычный интернет недоступен, но ресурсы Белых Списков продолжают работать.
Улучшена оценка:
- состояния мобильной сети;
- доступности ordinary-маршрута;
- доступности ресурсов Белых Списков;
- временно неопределённых результатов;
- полной недоступности сети;
- необходимости автоматического перехода на БС.
Проверки выполняются с учётом фактической underlying-сети устройства.
Улучшен БС-стабилизатор#
Доработан автоматический возврат из БС к обычному режиму.
Перед переключением приложение дополнительно подтверждает восстановление ordinary-сети и только после этого запускает подходящий ordinary- или personal-маршрут.
Улучшены сценарии:
- возврата на встроенный ordinary-сервер;
- возврата на персональный сервер;
- возврата на обычный сервер из подписки;
- перебора нескольких ordinary-кандидатов;
- повторного подтверждения стабильности сети;
- отображения процесса автоматического перехода.
Улучшена работа ручных режимов#
Ручной выбор ordinary или БС теперь лучше взаимодействует с автоматическими функциями Smart Connect.
Поддерживаются сценарии:
- ручной ordinary с последующим переходом на БС;
- ручной БС с последующим возвратом в ordinary;
- ручная смена БС-сервера;
- ручная смена режима при активном VPN;
- восстановление автоматического управления после ручного выбора.
Восстановление подключения#
Добавлена расширенная проверка маршрута#
При временной потере доступности Tunnel проводит дополнительную проверку активного VPN-маршрута перед сменой сервера или режима.
Это помогает при:
- слабом мобильном сигнале;
- высокой задержке;
- кратковременной потере пакетов;
- переходе между базовыми станциями;
- временном снижении качества мобильной сети;
- нахождении в лифте, подвале или помещении с плотными стенами;
- кратковременном исчезновении cellular-подключения.
Приложение получает больше времени на восстановление маршрута и не спешит менять сервер после единичной неудачной проверки.
Улучшено сохранение активного VPN#
Если сетевой маршрут временно недоступен, но сам VPN-процесс продолжает работать, Tunnel может сохранить активное подключение и продолжить восстановление.
В таком состоянии:
- VPN не отключается без необходимости;
- активный сервер сохраняется;
- продолжается контроль состояния VPN;
- отслеживается возвращение мобильной сети;
- выполняются повторные проверки маршрута;
- сохраняется возможность ручного отключения;
- после восстановления возвращается обычное состояние подключения.
Добавлено состояние нестабильной сети#
Foreground-уведомление VPN может временно отображать состояние сетевой нестабильности.
В нём могут отображаться:
- текущая проверка;
- результат проверки;
- этап восстановления;
- актуальная задержка;
- возможность отключить VPN.
После восстановления сети уведомление автоматически возвращается к обычному виду.
Улучшена работа при полной потере мобильной сети#
Временное исчезновение cellular-подключения не всегда требует немедленного завершения VPN.
Tunnel может сохранить активное подключение и дождаться:
- возвращения мобильной сети;
- появления Wi-Fi;
- подключения Ethernet;
- ручного отключения;
- подтверждённой остановки VPN-процесса.
Деградация сети LTE и LTE+#
Добавлены функции «Деградация сети LTE/LTE+»#
В настройки Smart Connect добавлена дополнительная оценка типа мобильного подключения. Она во многом для Android 12 и только, т.к. 12 и ниже Android запрашивает разрешение Телефон для просмотра сети. Начиная с версии 13 и выше это разрешение не нужно, а потому функция по умолчанию часть Smart Connect.
Функция помогает учитывать переходы между:
- 5G;
- LTE и LTE+;
- H и H+;
- 3G;
- EDGE;
- более старыми типами мобильной сети.
Информация о поколении сети используется как дополнительный диагностический признак. Основные решения по подключению по-прежнему принимаются на основе реальной доступности маршрута.
На отдельных версиях Android для работы функции может потребоваться разрешение на получение базовой информации о состоянии мобильной сети.
Улучшена диагностика мобильной сети#
Tunnel стал лучше различать:
- устойчивое мобильное подключение;
- снижение поколения сети;
- временное исчезновение cellular;
- недоступность маршрута при сохранённом сигнале;
- проблемы отдельного VPN-сервера;
- общее ухудшение сетевых условий.
Серверы и fallback#
Улучшен автоматический перебор серверов#
Доработана логика выбора следующего сервера при недоступности текущего маршрута.
Приложение аккуратнее обрабатывает:
- временно неответившие серверы;
- повторные проверки;
- переключение внутри текущего режима;
- исчерпание доступных вариантов;
- переход от ordinary к БС;
- возврат от БС к ordinary;
- серверы из подписок;
- персональные серверы.
Режим подключения точнее ограничивает класс выбираемого сервера: ordinary-подключение использует ordinary-кандидатов, а БС-режим — подходящие БС-кандидаты.
Улучшены БС-fallback сценарии#
Переключение между БС-серверами стало более последовательным.
Улучшены:
- выбор следующего БС-кандидата;
- обработка временной недоступности сервера;
- подтверждение нового маршрута;
- отображение процесса переключения;
- обработка исчерпания БС-вариантов.
Уведомления БС-fallback используются именно для автоматического переключения между БС-серверами внутри Контроллера сети.
Улучшена работа ordinary- и personal-маршрутов#
Автоматический возврат из БС лучше поддерживает:
- встроенные ordinary-серверы;
- персональные серверы;
- обычные серверы из подписок;
- последовательный перебор нескольких ordinary-кандидатов;
- восстановление предыдущего подходящего маршрута.
Уведомления#
Улучшено отображение автоматических переходов#
Доработаны уведомления для:
- переключения между БС-серверами;
- возврата к ordinary-режиму;
- восстановления мобильной сети;
- нестабильного VPN-маршрута;
- продолжительной проверки подключения;
- перебора доступных серверов;
- завершения автоматического перехода.
Уведомления стали точнее соответствовать фактическому этапу подключения.
Разделены разные типы переключений#
Tunnel лучше различает:
- ручную смену режима;
- ручной выбор сервера;
- автоматический БС-fallback;
- автоматический возврат стабилизатора;
- переход БС-детектора;
- обычное восстановление подключения.
Это делает сообщения приложения понятнее и снижает путаницу между разными сетевыми сценариями.
Улучшено отображение промежуточных состояний#
Интерфейс и уведомления стали понятнее показывать:
- проверку маршрута;
- восстановление сети;
- ожидание cellular-подключения;
- автоматическую смену режима;
- перебор серверов;
- подтверждение нового маршрута;
- временную сетевую нестабильность.
Quick Tile и AutoConnect#
Улучшен Quick Tile#
Запуск VPN из шторки Android стал точнее учитывать:
- текущий режим;
- состояние underlying-сети;
- последний подходящий сервер;
- доступность ordinary и БС;
- серверы из подписок;
- промежуточные состояния подключения.
Улучшен AutoConnect#
AutoConnect использует общий механизм определения режима и выбора маршрута.
Это делает автоматический запуск более согласованным с главным экраном, Quick Tile и действиями из уведомлений.
Унифицированы способы запуска#
Главный экран, Quick Tile, AutoConnect и действия из уведомлений теперь лучше используют общую логику:
- определения режима;
- выбора сервера;
- запуска подключения;
- восстановления маршрута;
- обработки сетевых ограничений.
Интерфейс#
Улучшен интерфейс Smart Connect#
Доработано отображение настроек:
- Smart Connect;
- Контроллера сети;
- БС-детектора;
- БС-стабилизатора;
- деградации сети LTE+;
- автоматических сетевых функций.
Интерфейс стал понятнее показывать зависимость отдельных функций от общего режима автоматического управления.
Улучшено отображение текущего состояния#
Приложение стало понятнее отображать:
- текущий режим подключения;
- активный сервер;
- этап запуска;
- процесс восстановления;
- автоматическое переключение;
- состояние нестабильной сети;
- результат выбора маршрута.
Исправления и улучшения#
- Улучшена работа Smart Connect.
- Обновлён Контроллер сети.
- Улучшено определение режима перед подключением.
- Улучшен запуск с главного экрана.
- Улучшен запуск через Quick Tile.
- Улучшен AutoConnect.
- Улучшена работа действий из уведомлений.
- Улучшен автоматический переход между ordinary и БС.
- Улучшена работа БС-детектора.
- Улучшена работа БС-стабилизатора.
- Улучшены ручные переключения режимов.
- Улучшено взаимодействие ручных режимов с автоматическими функциями.
- Добавлена расширенная проверка VPN-маршрута.
- Улучшено восстановление при высокой задержке.
- Улучшена работа при временной потере мобильной сети.
- Улучшено сохранение активного VPN-подключения.
- Добавлено состояние нестабильной сети.
- Добавлена функция «Деградация сети LTE+».
- Улучшено определение поколения мобильной сети.
- Улучшена работа с ordinary-, personal- и БС-серверами.
- Улучшены fallback-сценарии.
- Улучшено переключение между БС-серверами.
- Улучшен автоматический возврат к ordinary.
- Улучшены уведомления сетевых переходов.
- Улучшено отображение промежуточных состояний.
- Улучшена обработка устаревших сетевых состояний.
- Улучшена защита от параллельных переключений.
- Улучшена внутренняя диагностика сетевых сценариев.
- Расширено тестирование Smart Connect и восстановления сети.
- Исправлен баг, когда у вас "копились" и засоряли память сервера в подписках.
Технические улучшения#
- Обновлена архитектура определения сетевого режима.
- Улучшена координация между Контроллером сети и VPN-сервисом.
- Унифицированы основные способы запуска VPN.
- Расширена модель проверки активного маршрута.
- Добавлена дополнительная стадия восстановления перед fallback.
- Улучшено управление активным VPN при временной потере сети.
- Улучшена изоляция параллельных процессов восстановления.
- Доработана работа с underlying-сетями при активном VPN.
- Улучшена маршрутизация диагностических проверок.
- Добавлена консультативная оценка поколения cellular-сети.
- Улучшена модель автоматического перехода ordinary ↔ БС.
- Доработана обработка ordinary- и БС-кандидатов из подписок.
- Улучшена синхронизация уведомлений с состоянием подключения.
- Расширены целевые тесты сетевых сценариев и автоматических переходов.
- Исправлен баг с недоступными серверами в БС-подписках.
Итог#
Tunnel 0.12.0 делает Smart Connect, Контроллер сети и Белые Списки более устойчивыми в реальных мобильных сетях.
Основной акцент версии:
- более точное определение режима подключения;
- улучшенный БС-детектор и БС-стабилизатор;
- расширенное восстановление VPN-маршрута;
- сохранение подключения при временной потере сети;
- улучшенные fallback-сценарии;
- поддержка диагностики деградации мобильной сети;
- более понятные уведомления;
- единое поведение главного экрана, Quick Tile и AutoConnect;
- более стабильная работа ordinary-, personal- и БС-серверов.