Лучшие практики для реализации буферов чтения / записи из сокетов - PullRequest
0 голосов
/ 21 сентября 2019

Описание задачи:

  1. Существует Локальное приложение , которому необходим доступ к данным с физического устройства путем отправки некоторых запросов.
  2. Локальное приложение также запускает сервер на localhost
  3. Посередине находится приложение Канал связи, который подключается к локальному приложению с помощью сокета TCP.
  4. Приложение канала связи работает как клиент и получает запросы от локального приложение и помещает их в буфер запросов
  5. приложение канала связи также считывает буфер запросов и отправляет запрос в Устройство .
  6. Теперь последняя часть - это Устройство , которое получает запросы и отправляет ответ в ответ на приложение Канал связи * 1043.*.
  7. Приложение канала связи получает ответы от устройства и помещает их в буфер ответов .
  8. Наконец, приложение канала связи отправляет ответы, полученные от устройства, обратно в локальное приложение.

PS: устройство также может отправлять что-то свое (например,его статус) даже без запроса.

enter image description here

ВОПРОС: Я представил все свои идеи о теме ибуферы, которые я планирую использовать на изображении выше.Но я думаю, что это очень классическая проблема, и для этого уже есть много решений. Мне не разрешено использовать внешний SDK, который необходимо установить. Что я могу использовать из C # (или некоторых доступных DLL-библиотек), чтобы мне не нужно заново изобретать колесо

...