1

您有两个应用程序需要在局域网中在它们之间交换信息。第一个应用程序使用 TCP 进行通信,而第二个应用程序使用 UDP。我们可以直接链接两个应用程序吗?如果您的回答是否定的,请解释我们如何将它们联系起来?

(来自家庭作业)

我认为答案是否定的,我们需要在它们之间使用一些翻译器或中间件。但是什么?

4

1 回答 1

2

如您所见,您不能简单地将两种类型的连接合二为一。TCP 是一种状态全连接,需要两台计算机建立连接,而 UDP 是无状态/无连接连接,只需要一台计算机,发送和忘记的风格。

如果你想让它们相互通信,你必须有一个中间件。

TCP 应用程序应该有一个TCP 客户端TCP 服务器 中间件应该有一个TCP 服务器,它将监听 TCP 应用程序的客户端并建立连接,以及一个TCP 客户端,它将与 TCP 应用程序的服务器建立连接。

现在中间件可以与 TCP 应用程序完全通信。

为了对 UDP 应用程序执行此操作,您应该在某个端口监听 UDP,以便监听来自 UDP 应用程序的传入数据,并通过 UDP 将其发送到UDP 应用程序(UDP 应用程序需要监听该端口)港口)

于 2012-06-10T21:13:21.040 回答