使用Winsock API同时打开TCP连接

Simultaneous open tcp connection using winsock api

本文关键字:TCP 连接 Winsock API 使用      更新时间:2023-10-16

是否可以在C 中同时实现打开TCP连接。有关您的信息,我将引用下面同时打开的TCP连接

http://ttcplinux.sourceforge.net/documents/one/tcpstate/tcpstate.html

基于该状态图,我看到了两种可能性:

1)双方同时呼叫connect()。由于这需要提前了解IP/端口对,因此双方都必须将bind()转到特定的IP/端口对,然后在调用connect()之前相互交换该信息(如果不是硬编码)。

2)一方正在调用listen(),然后用听力套接字调用sendto(),而另一方则在致电bind()后同时调用connect()

在套筒编程中,这两种情况都不常见。您永远不会有两个客户 connect()'互相互相互相,如果您在听力套接字上发送数据很少,您会等待accept()先返回已建立的端点,然后用该数据发送数据。