我对accept()C中的功能有疑问.
当服务器接收连接时,该accept()函数创建一个新的套接字与客户端通信,然后让"旧套接字"侦听新连接.
然后,我明白服务器可以通过"新套接字"与客户端通信,但客户端如何与"新套接字"通信(因为客户端不知道这个"新套接字")?
在服务器端,侦听套接字仅与本地IP和端口关联,并处于LISTEN状态.
相反,服务器上接受的套接字(以及客户端上的连接套接字)由本地IP和端口以及远程IP和端口标识,并处于ESTABLISHED状态.
在客户端,服务器使用与连接套接字分开的侦听套接字并不重要.到客户端返回时connect,服务器已经返回,accept并且从每个服务器返回的套接字描述符可以相互通信.
| 归档时间: |
|
| 查看次数: |
3621 次 |
| 最近记录: |