Wi-Fi vs. WhatsApp
Sep. 9th, 2016 08:24 pm![[identity profile]](https://www.dreamwidth.org/img/silk/identity/openid.png)
![[community profile]](https://www.dreamwidth.org/img/silk/identity/community.png)
Есть вайфай точка (онлайм), iPhone 5s и приложение WhatsApp на нем.
Если юзать E, 3G или LTE — всё ОК. Но с вайфаем какая-то аномалия. Прихожу домой, подцепляю вайфай и как бы всё хорошо. Но потом выясняется, что мне в WhatsApp народ пишет, а уведомления до меня не доходят. То есть я сижу такой, на расслабоне, а в WhatsApp куча сообщений. Когда открываю WhatsApp, вижу надпись «Подключение...». Без подключения, конечно. Вырубаю вайфай, тут же получаю 24 сообщения в WhatsApp, которые уже полтора часа как там.
Интересует, сталкивался ли кто-нибудь с такой хренью, и как с этим бороться. Бывает, кстати, что и с вайфаем WhatsApp вдруг начинает дружить и все сообщения я получаю. Но такое случается нечасто.
Если юзать E, 3G или LTE — всё ОК. Но с вайфаем какая-то аномалия. Прихожу домой, подцепляю вайфай и как бы всё хорошо. Но потом выясняется, что мне в WhatsApp народ пишет, а уведомления до меня не доходят. То есть я сижу такой, на расслабоне, а в WhatsApp куча сообщений. Когда открываю WhatsApp, вижу надпись «Подключение...». Без подключения, конечно. Вырубаю вайфай, тут же получаю 24 сообщения в WhatsApp, которые уже полтора часа как там.
Интересует, сталкивался ли кто-нибудь с такой хренью, и как с этим бороться. Бывает, кстати, что и с вайфаем WhatsApp вдруг начинает дружить и все сообщения я получаю. Но такое случается нечасто.
no subject
Date: 2016-09-09 10:26 pm (UTC)no subject
Date: 2016-09-09 10:54 pm (UTC)no subject
Date: 2016-09-14 12:36 am (UTC)Программа должна просто открыть TCP-соединение с сервером и посылать туда запросы; а ядро будет упаковывать эти запросы в пакеты и запихивать в WiFi-адаптер; не само, а через драйвер этого адаптера. А уже драйвер должен "включать WiFi", если тот выключен.
Топиккастер пишет: "Когда открываю WhatsApp, вижу надпись «Подключение...». Без подключения, конечно." - это значит, что программа то ли пытается открыть TCP-соединение с сервером; то ли уже открыла TCP-соединение с сервером и пытается отправить туда запросы и получить ответы.
Если бы ядро считало, что WiFi-соединения нет - оно бы просто отказало программе в открытии TCP-соединения с сервером. Однако, тогда программа может продолжать попытки открыть TCP-соединение с сервером.
Проблема в том, что тупые разработчики считают юзеров ещё более тупыми и не считают нужным вывести более подробную информацию о том, на каком этапе затык.
В идеале надо было бы посмотреть tcpdump на WiFi-роуере и выяснить, какие пакеты через него проходят. Впрочем, скорее всего - пакеты просто не проходят, а проблему в WiFi так просто определить не получится.