Мое приложение поддерживает несколько экземпляров одного и того же процесса сервера (службы Windows), как, например, f.e. SQL Server.
Обмен данными между клиентом и сервером будет происходить только в одной сети.
Я могу использовать TCP, но затем мне нужно настроить отдельные IP-порты для каждого экземпляра сервера. Однако я могу просто использовать именованные каналы, поэтому мне не нужно думать о номерах портов и просто использовать имя экземпляра сервера.
Не будет очень частой и / или большой передачи данных клиент / сервер. Это своего рода ERP-приложение, которое будет общаться в среднем раз в 30 секунд.
Кроме того, я хочу предотвратить любое взаимодействие клиент / сервер вне сети (интрасети).
Какой здесь мудрый выбор?
Обновление: и клиент, и сервер написаны с использованием .NET 4, и никакие сторонние клиенты не смогут использовать сервер.