先说结果吧,结果是无影响,已建立的连接依然可以正常使用。
实验环境
windows10,vs2010
实验过程
服务器采用VC编程,客户端使用TCP调试软件。
服务器工作流程
1、创建监听套接字socket1,绑定端口17000。
2、使用listen函数监听socket1。
3、使用accept函数从socket1接受连接,得到一个新的套接字socket2。
4、关闭socket1。
5、使用recv函数从socket2接收数据,处理,回复。
客户端工作流程
1、创建TCP套接字socket3。
2、socket3使用connect函数连接服务器,目标端口为17000。
3、使用send函数从socket3发送数据。
4、使用recv函数从socket3接收数据。
实验结果
1、socket3可以正常发送和接受数据。
2、关闭socket1之后,如果客户端创建socket4,再使用socket4连接服务器,则无法建立连接。
3、关闭socket1之后,服务器可以创建socket5,绑定端口17000,使用listen函数监听socket5,使用accept函数从socket5接受连接,socket2和socket3之间的通信不受影响。
4、关闭socket1之后,其它进程也可以创建socket5,按第3条的方法使用,socket2和socket3之间的通信不受影响。
---------------------------------------------EOB-----------------------------------------------------