我们知道有两个插座,欢迎插座和连接插座,如下图所示:
因此,欢迎套接字用于发起TCP三次握手,而连接套接字实际上用于客户端和服务器之间的数据传输。
下图描述了TCP三次握手的过程:
三次握手的这个第三阶段可以在段有效载荷中携带客户端到服务器数据。
所以我的问题是,使用哪个套接字来发送第三阶段段?我认为应该是连接套接字,因为数据段可以包含数据,而连接套接字是用来传输数据的,但由于第三阶段是三次握手过程的一部分,所以应该使用欢迎套接字吗?
发布于 2020-08-18 23:44:45
套接字不是真实的东西,而是程序员的抽象概念,即API。这与哪个套接字“执行”TCP握手无关,也与操作系统内核中是否有类似套接字的东西执行TCP握手无关。
重要的是accept
总是返回一个连接的套接字,也就是说,TCP握手是在这一点上完成的。相反,侦听套接字保持未连接,以便它可以接受新的客户端。
https://stackoverflow.com/questions/63471078
复制相似问题