2016-07-16 3 views
2

Я создаю клиент-серверную программу, в которой клиент и сервер подключены с использованием одного TCP-соединения.Множество TCP-соединений по одному подключению tcp

В сообщении есть несколько каналов данных, которые я хочу мультиплексировать по одному единственному TCP-соединению, но при этом сохраняя хороший контроль потока между каналами (предотвращая голодание и т. Д.). Кроме того, туннелирование будет приятным, но не обязательным.

Я использую C, Windows.

Я думал использовать SSH, но у меня есть несколько проблем с ним:

  1. У меня было трудно найти хороший открытым исходным кодом SSH для окон.
  2. Большая часть кода в SSH обрабатывает безопасность, которой у меня нет необходимости.
  3. SSH кажется слишком сложным для моих нужд, со всеми X11, pty, оболочками и так далее.

ответ

1

Похоже, что вы хотите отправить данные в «сегменты», где каждый сегмент будет иметь заголовок, указывающий канал и количество байтов данных. Таким образом, вы можете перемежать данные для разных каналов в одном соединении. Это помогает?

+0

Вы правы, но я предпочитаю не реализовывать его самостоятельно, включая динамическое распределение каналов и управление потоком, чтобы поддерживать все каналы. – user972014

Смежные вопросы