三次握手后是否发生 Accept 事件?

yas*_* cp 3 sockets networking tcp client-server

我正在使用套接字编程在 Linux(客户端和服务器)上编写应用程序。我遇到过这样一种情况,我的服务器应用程序从不响应另一端的初始 SYN 数据包。

我还在调试这个问题。

由于我的服务器正在侦听端口,因此它永远不会生成接受事件。接受事件是在 TCP 握手完成后生成还是在接收到初始 SYN 数据包时生成接受事件?

一些有用的链接,会有所帮助。

最好的事物

use*_*421 6

TCP握手完成后是否产生accept事件

是的。

或者当接收到初始 SYN 数据包时生成接受事件?

不,握手已经发生了。accept()只是从已经接受的连接队列中为您提供一个套接字。当队列为空时,它会阻塞。

这意味着即使服务器从未调用过,客户端也可以连接accept()