В недавней серии вопросов я много спрашивал о UDP, boost :: asio и c ++ в целом.
Мой последний вопрос, на который, похоже, нет ответа здесь, в Stackoverflow, таков:
В клиент-серверном приложении вполне нормально требовать, чтобы сервер открыл порт в любом брандмауэре, чтобы сообщения были разрешены. Однако делать то же самое для клиентов определенно не очень удобно для пользователя.
TCP-соединения обычно достигают этого из-за того, что большинство маршрутизаторов поддерживают проверку пакетов с отслеживанием состояния, что позволяет получать ответные пакеты, если исходный запрос исходил от локального хоста.
Мне не совсем понятно, как это будет работать с UDP, так как UDP не имеет состояния и не существует такой вещи, как "ответные пакеты" (насколько мне известно). Как я должен учитывать это в моем клиентском приложении?
Спасибо за любые ответы!