【发布时间】:2016-01-08 12:17:32
【问题描述】:
在网络套接字编程中,我知道listen()和accept()是做什么的。
但是,我想知道的是,在tcp中,3路,三路握手发生在哪里。
listen() 是执行三向握手,还是accept()?
我的意思是做 syn(client) // syn/ack(server) // ack(clinet) 数据包。
【问题讨论】:
-
两者都不是。
listen()和accept()不是 TCP(或任何其他支持的协议)的直接接口。当然 Danny_ds 是正确的,listen()在执行任何握手之前返回(或必须能够这样做),但这并不意味着系统在建立连接之前等待accept()调用。
标签: c sockets networking