Tcp 一个端口可以创建多少个套接字?

Tcp 一个端口可以创建多少个套接字?,tcp,Tcp,一个端口可以创建多少个套接字?这是操作系统的限制 基本上,每个套接字都需要一个文件描述符(在Linux/Unix术语中;在Windows中可能是等效的)。操作系统将有一个每个进程文件描述符的限制(比如250-1000),这将是上限。它取决于操作系统 对于Windows,请查找MaxConnections条目 对于Linux,请看对问题的评论 这将由进程可用的客户端端口数决定(即,当您打开到远程主机/端口组合的连接时,您还需要在您的端部提供一个端口) 客户端(或临时)端口的总数将可用于计算机上的

一个端口可以创建多少个套接字?

这是操作系统的限制


基本上,每个套接字都需要一个文件描述符(在Linux/Unix术语中;在Windows中可能是等效的)。操作系统将有一个每个进程文件描述符的限制(比如250-1000),这将是上限。

它取决于操作系统

  • 对于Windows,请查找MaxConnections条目

  • 对于Linux,请看对问题的评论


这将由进程可用的客户端端口数决定(即,当您打开到远程主机/端口组合的连接时,您还需要在您的端部提供一个端口)

客户端(或临时)端口的总数将可用于计算机上的所有进程。因此,这取决于当前运行的其他内容


端口数和配置取决于操作系统。只需在谷歌上搜索“最大端口数”和您的操作系统。

您可能应该仔细查看“侦听”一词的用法,因为“侦听”一词的含义不明确,通常是在端口而不是套接字上侦听。“一个程序可以监听多少个端口?”或“一个端口(或一组端口)可以创建多少个套接字?”这两个问题是否不必要。侦听线程可以将连接处理委托给另一个线程,并立即关闭文件描述符。所以它的最大线程数乘以每个线程的最大文件描述符数。@artistoex哪个操作系统限制每个线程而不是每个进程的文件描述符?@tzot在Linux线程下基本上都是进程。请看一看,据我所知,它允许您创建不共享文件描述符的线程。@artistoex本着同样的精神,阅读posix中的线程定义。很明显,clone(2)和process-as-a-thread是Linux内核的一个实现细节,普遍适用的公式是:最大进程数乘以每个进程的最大FD数。