对于TCP/IP连接,如果只有一个目标端口,则两个主机之间最多可以有64k个连接(来源:What is the theoretical maximum number of open TCP connections that a modern Linux box can have)。Unix域套接字有连接限制吗?还是仅受文件描述符数量的限制?
对于TCP/IP连接,如果只有一个目标端口,则两个主机之间最多可以有64k个连接(来源:What is the theoretical maximum number of open TCP connections that a modern Linux box can have)。Unix域套接字有连接限制吗?还是仅受文件描述符数量的限制?
我发现UNIX域套接字存在两个限制:
1- 基于每个进程可以打开的并发文件描述符数量的限制: 每个进程可以打开的文件数是有限制的,需要减去一些已经使用的文件描述符,因此默认情况下一个进程最多能够处理1014个并发连接,但是可以使用ulimit命令更改此限制。 了解更多信息请参阅https://titanwolf.org/Network/Articles/Article?AID=2fbb967c-c507-4798-990d-edc3a9b132a8
2- 自动绑定功能的地址大小限制,如果您正在使用自动绑定功能或安全标志,则地址限制为2^20个自动绑定地址。从Linux 2.1.15开始添加自动绑定功能时,使用了8个字节,因此限制为2^32个自动绑定地址。更改为5个字节是在Linux 2.3.15中进行的。 了解更多信息请参阅https://man7.org/linux/man-pages/man7/unix.7.html