Может ли слушатели подключения TCP и HTTP могут взаимодействовать друг с другом или нет?

StackOverflow https://stackoverflow.com/questions/2590642

  •  25-09-2019
  •  | 
  •  

Вопрос

Есть ли способ, которым слушатели подключения HTTP и TCP могут взаимодействовать друг с другом?

У меня есть два отдельных прикладных модуля, которые работает через HTTP и другие требует TCP. Мне нужно сделать взаимодействие между этими двумя модулями, так что есть, я могу сделать мой модуль на основе HTTP взаимодействовать с модулем на основе TCP.

Это было полезно?

Решение

Два различных процесса не смогут использовать тот же IP-порт на одном IP-адресе. Таким образом, два процесса не смогут использовать тот же входящий поток данных, выходящих из соединения TCP. Если они используют разные порты, нет проблем.

Если два процесса используют один и тот же IP-порт, поскольку HTTP представляет собой протокол, который находится в верхней части TCP, это означает, что ваш процесс TCP может использоваться в качестве трубы по процессу HTTP. Процесс TCP будет подключаться к IP-порту, выполнять свои вещи и пересылать данные в HTTP-процесс, который будет обрабатывать его.

Другие советы

Прежде всего, вам нужно немного читать на сетевых концепциях. HTTP Это то, что известно как протокол уровня приложения, тогда как TCP Это известный как протокол транспорта. Посмотрите на Модель сети OSI.

В качестве примера вы можете представить, что TCP это телефонная сеть. Это дает вам основные средства для подключения к другому человеку и поговорить с ними. Однако для того, чтобы фактически общаться, вам нужно говорить на одном языке, например, английский или французский. Это протокол уровня приложения, HTTP в твоем случае.

Итак, чтобы ответить на ваш вопрос, чтобы ваши два приложения могли сообщать и обмениваться данными, им нужно сделать соединение / вызов, используя TCP а также Оба говорят о том же протоколе языка / уровня приложения, а именно HTTP.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top