sockets - TCP和UDP相同的端口,不同的进程

标签 sockets tcp udp port

我知道您不能让两个不同的进程使用同一个端口,但是如果一个使用 tcp 而另一个使用 udp 会怎样?你能有两个不同的进程,每个进程都将套接字绑定(bind)到相同的端口但协议(protocol)不同吗?

最佳答案

5 元组(协议(protocol)、源 ip、源端口、目标 ip、目标端口)必须是唯一的。这意味着您不仅可以让 TCP 和 UDP 使用相同的端口号,甚至可以使用相同的协议(protocol)和本地端口号但目的地不同的传出连接。

然而,在监听时,套接字的协议(protocol)通常必须是唯一的,即您可以/不应该打开具有相同端口号的另一个 TCP 套接字。

关于sockets - TCP和UDP相同的端口,不同的进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13547016/

相关文章:

c - SO_KEEPALIVE : Set on the server socket or on a per-client basis?

java - 基本的java套接字编程问题

c# - 判断一个TCP流是否已经断开

c - UDP - 多线程服务器无法区分 ack 消息和连接消息

ios - 处理 ios 实时客户端-服务器通信的最佳方法是什么?

c - 当两个线程尝试同时写入同一个 tcp 套接字时出现同步问题

java - 使用 asynctask 进行网络连接

c - 创建服务器/客户端 TCP/IP 程序时遇到问题

c++ - 使用 UDP 的电子邮件客户端/服务器

delphi - Delphi中的UDP服务器和客户端