10 октября 2014 г.

Снятие ограничения скорости у мобильного оператора Yota при раздаче интернета по WiFi

Примерно с августа этого года начал свою работу новый виртуальный мобильный оператор Yota, предлагающий действительно безлимитный интернет для смартфонов по умеренной стоимости (для Москвы - 300р./мес.)
При этом существует три значительных ограничения:
  1. Запрет загрузки торрентов (ограничение скорости до 64 кбит/с).
  2. Запрет на использование VPN. Был снят в сентябре (читать).
  3. Ограничение скорости до 1 Мбит/с при раздаче интернета по WiFi с устройства. Теперь предлагается оплатить или продолжить с ограничением в 128 Кбит/c.
Последнее ограничение вполне предсказуемо, стоимость полного безлимитного интернета для роутеров и модемов - 1.400 рублей, почти в пять раз больше. В большинстве случаев ограничения скорости вполне достаточно, чтобы проверить почту и прочесть новости, но бывают случаи, когда скоростной доступ нужен здесь и сейчас. Рассмотрим способы обхода урезания скорости.

Как определяется факт раздачи интернета

Для определения факта раздачи интернета с устройства используется значение TTL - время жизни IP-пакета (подробнее на википедии). Есть стандартное значение TTL, которое определяется вашим устройством. Как только пакет проходит узел, значение TTL уменьшается на единицу. В нашем случае при подключении стороннего устройства изменяется передаваемое с телефона значение TTL и оборудование оператора понимает, что подключено более одного устройства.
Что требуется сделать нам? Изменить значение TTL так, чтобы оператор не видел новые устройства.

Обходим ограничение

Мы рассмотрим наиболее универсальный способ - корректировку TTL на компьютере. Это позволит обойти ограничение на любом телефоне.

ВНИМАНИЕ! После прочтения статьи обязательно 

Получение текущего значения TTL на телефоне

Универсальный способ

1. Включите раздачу интернета по WiFi с устройства.
2. Подключитесь к сети с компьютера.
3. Откройте на компьютере "Сетевые подключения" и откройте "Состояние" у текущего беспроводного соединения: 
Состояние беспроводного соединения
Состояние беспроводного соединения
Откройте вкладку "Сведения...":
Сведения о сетевом подключении
Сведения о сетевом подключении
Нам нужно значение поля "Шлюз по умолчанию", в данном случае "192.168.43.1"
4. Запустите командную строку Windows и выполните команду:
ping 192.168.43.1
 Вот пример результата:
Результат команды Ping
Результат команды Ping
Запоминаем значение TTL, в данном случае это 64.

Способ для телефонов на базе Android

Если универсальный способ вам не подошел, но ваш смартфон на базе Android, то можете воспользоваться другим способом - через эмулятор консоли на самом телефоне.

1. Устанавливаем на телефон эмулятор консоли через Google Play (приложение) или Apk (скачать с 4pda.ru).
2. Запускаем эмулятор и вбиваем команду в строку: 
cat /proc/sys/net/ipv4/ip_default_ttl
 Результат - наш TTL:
Запрос TTL на Android
Запрос TTL на Android
Логично, что результат тот же, что и универсальным методом, 64.

Изменение значения TTL на компьютере

Стандартное значение TTL на компьютере изменяется через реестр.
1. Запускаем редактор реестра. Проще всего нажать Win + R, ввести regedit и нажать Enter.
2. Открываем ветку по адресу:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
3. Создаём там параметр DWORD (32 бита) с именем DefaultTTL, открываем его, выбираем десятичную систему исчисления и вбиваем в качестве значения ваш TTL (полученный ранее) + 1. В моём случае это 64 + 1 = 65.
Параметр DefaultTTL
Параметр DefaultTTL
4. Нажимаем "ОК", закрываем реестр, перезагружаем компьютер.

На телефоне желательно переподключить соединение с интернетом, затем включить раздачу по Wi-Fi.
Любые вопросы оставляйте в комментариях, буду отвечать и дополнять статью.

4 октября 2014 г.

Почему NVIDIA GeForce Experience Backend (NvBackend.exe) загружает процессор?

Что это за программа и как она работает

GeForce Experience - это приложение-компаньон для вашей видеокарты GeForce. Приложение своевременно обновляет драйверы вашей видеокарты, автоматически оптимизирует игровые настройки вашего ПК и предлагает самый простой способ записи вашего геймплея или его потоковой передачи в Twitch.
Всё просто: как только вы устанавливаете новую игру, программа находит её в своей базе данных и предлагает оптимальные настройки исходя из характеристик вашего компьютера.

Почему происходит сильная загрузка процессора и решение проблемы

Вариант 1 (наиболее вероятный)

Чтобы отследить появление новых программ, программа постоянно следит за изменениями в тех папках системы, где обычно хранятся установленные программы. Эти папки настраиваются в самой программе GeForce Experience:
Параметры расположения игр в GeForce Experience
Параметры расположения игр в GeForce Experience
В то же время многие программы хранят в этих каталогах свои рабочие файлы (допустим, в Program Files по умолчанию хранятся файлы баз данных СУБД PostgreSQL) и постоянно с ними взаимодействуют. GeForce Experience постоянно обращается ко всем новым и изменяемым файлам и тем самым существенно загружает процессор. А если ко всему этому подключается еще и антивирус, то загрузка процессора на все сто обеспечена.
Вот пример, когда PostgreSQL выполняет тяжелый запрос с большим количеством действий:
Пример разгрузки процессора
Пример разгрузки процессора

Решение проблемы

При поиске решения чего только не встречал (удаление программы, переустановка, блокировка автозапуска через msconfig и более экзотические советы), на самом деле в общем случае достаточно снять галку в настройках, которые я уже показывал выше:
Отключение автоматического поиска
Отключение автоматического поиска
Только теперь после установки игры нужно будет заходить в те же настройки и запрашивать поиск новых игр:
Проверка на наличие новых игр
Проверка на наличие новых игр
Если вы предпочитаете настраивать игры самостоятельно и эта функция совсем не интересна, то делать вообще ничего не нужно.
В случае, если вы педантично держите все устанавливаемые игры в определённом каталоге, то можно не отключать автопроверку, а исключить стандартные папки и добавить свою, допустим "D:\Games".
Если вы покупаете игры только через Steam (или аналогичный клиент), то можно указать прямой путь к папке с играми, по умолчанию это "C:\Program Files\Steam\SteamApps\".

Дополнение: Почему даже после удаления NVIDIA GeForce Experience Backend (NvBackend.exe) загружает процессор?

Вариант 2

Если первый вариант не решил проблемы, а также в случае если процессор всегда загружен более чем на 80% (и не всегда это GeForce Experience Backend), то причиной загрузки процессора скорее всего является вирус.

Решение проблемы

Рекомендую проверить компьютер на вирусы бесплатными антивирусными утилитами:
  1. Kaspersky Virus Removal Tool
  2. Dr.Web CureIt!
Они не конфликтуют с уже установленными антивирусами и имеют актуальную базу.