【发布时间】:2015-09-05 13:12:11
【问题描述】:
让我就我的要求提供一些背景信息,以便清楚地说明:
在 Internet 上的服务器-客户端 TCP 通信的上下文中,当服务器进程运行时,客户端进程可以启动到服务器的 TCP 连接。它通过启动三次握手来实现。
在握手阶段结束时,accept() 函数(在服务器端的 welcoming socket 上调用)将建立一个 new 套接字 - 一个 连接套接字 - 专用于新的传入客户端连接。
从现在开始,直到此连接终止,服务器将通过连接套接字与客户端通信。
由于每个客户端都得到一个连接套接字,而服务器上的 TCP-socket 由一个四元组(src IP 地址,src 端口号,dest IP 地址,dest 端口号)唯一标识,端口号是一个16 位数,那么服务器如何支持超过 65,536 个客户端(嗯,65,536 减去保留的客户端)?
【问题讨论】:
-
通过引入多个 CD 服务器(场)来增加冗余——假设资源是限制因素。