В природе есть только два способа сокеты и shared memory из двухсторонних,мгновенных и надежных. А все остальное настройка и обертка над ними.
И вам надо различать хост и сервер. stdout, пайпы, файлы, сервисы это для не прямого и специфического обмена. А учитывая как поставлен вопрос shared вы не напишите.
Поэтому пользуйтесь tcp самый простой, распространненный и дефакто стандарт. А библиотек для взаимодействия на нем море.