Что я использую для двусторонней связи через Интернет без необходимости открывать порты на стороне клиента?
Пользователи не согласятся открывать порты и выполнять переадресацию портов на стороне клиента, хотя все возможно на стороне сервера.
Но мне нужно выполнить двухстороннюю связь.
Как мне добиться этого?
Не имеет значения, будет ли его WCF или удаленный доступ или веб-службы... Мне просто нужен быстрый и быстрый способ получить концепцию для разработки и распространения приложения.
Конечно, это будет через Интернет.
Пожалуйста, помогите.. Благодаря
Изменить: Обратите внимание, что мне нужно подключить несколько клиентов и поддерживать сеанс для каждого клиента.
WCF поддерживает дуплексные привязки HTTP.
Пока инициирующий клиент может получить доступ к службе, для вызова клиента может быть определен контракт обратного вызова. Он просто поддерживает HTTP-соединение после того, как клиент инициировал его.
Это зависит от того, что вы хотите сделать. Дуплексный WCF может работать, но через NAT и Proxies он становится несколько "iffy", потому что он зависит от того, что клиент открывает конечную точку WCF и поддерживает соединение.
Я написал руководство для новичков к обратным вызовам WCF некоторое время назад - достаточно просто сделать, но вам нужно будет протестировать его много, от различных настроек клиента.
Подключить через TCP (raw сокеты или более высокую реализацию) к центральному серверу.
На вашем сервере должно быть приложение, которое прослушивает конкретный, известный TCP-порт.
Каждый клиент подключается к вашему серверу, используя конкретный порт и "входит в систему".
Запишите протокол приложения выше TCP (проверка подлинности, управление сеансом и т.д.), И там у вас есть , поскольку TCP-соединение, однажды установленное, работает для обоих направлений.