Получение push-уведомлений на устройствах с локальным IP-адресом работает нормально. Мне просто интересно, как это работает. Это просто uPnP? Устройство начинает связь с облачным сервисом обмена сообщениями, а затем включается IGD? Таким образом, сопоставление сохраняется. Поддерживает ли клиент push-уведомлений постоянное соединение с облачным сервером? Я хотел бы думать, что это не так.
Меня особенно интересует, как push-уведомление знает, как связаться с устройством, если оно находится за NAT или межсетевым экраном. Существует ли сценарий, при котором push-уведомления Google не смогут получить доступ к устройству?
источник