持久性套接字如何跨网络上的路由器工作。我计划在机器和远程机器之间打开一个持久性 Flash 套接字。在它们之间可能有几台机器。它们中的每一个都持续保持一个持久的套接字吗?这种情况如何扩展到网络上的数百万用户?
问问题
53 次
2 回答
1
有两种类型的套接字连接,基于流(如 TCP)和基于数据报(如 UDP)。
即使是开放的 TCP 连接也只是从源到目标路径上每台机器的路由表中的一个条目。打开的连接本身不会消耗 CPU 功率,只有发送的数据包才会消耗。
所以回答你的问题:是的,中间的每台机器都维护这个套接字连接,但它非常好并且可以很好地扩展。
于 2013-05-02T12:59:46.170 回答
1
Internet 上的路由器通常不会跟踪 TCP 级别的连接。通常,他们只有路由规则来了解如何将 IP 流量转发到 Internet 上的下一跳,以获取 IP 数据包中的目标地址。
现在,您的 ISP 为您的家庭提供的路由器/NAT 执行一些连接跟踪逻辑,以将您的公共 IP 映射到与 NAT 后面的 PC 关联的连接。但这是例外,而不是规则。
“套接字”和“连接”是由 TCP/IP 会话的两个端点维护的概念和状态。介于两者之间的一切(理论上,但在实践中不是必需的)都是无状态的。
于 2013-05-03T09:34:17.123 回答