- 一个socket只能建立一个连接,一个socket是有 srcIP ,srcPort, desIP ,desPort (四元组)唯一确定的。而对于一个端口来讲,比如服务器80端口,它可以和无数个客户端端口进行连接,只要四元组的组合体是唯一的就行(理论值:就是所有客户端IP数 × 端口数, 对 IPv4,客户端的 IP 数最多为
2
的32
次方,客户端的端口数最多为2
的16
次方,也就是服务端单机最大 TCP 连接数,约为2
的48
次方)。不过因为Linux一切皆文件,socket也是文件。所以一般是受到进程的fd限制,比如Linux用户进程默认最大只能有1024个文件描述符。内核进程默认最大有4096个文件描述符。