1. tcp服务器需要绑定,否则找不到这个服务器
2. tcp客户端一般不绑定,因为是主动链接服务器,所有只要确定好服务器的ip,port等信息就好,本地客户端可以随机
3. tcp服务器中通过listen可以将socket创建出来的主动套接字变成被动的,这个是做tcp服务时必须做的
4. 当客户端需要链接服务器时,需要使用connect进行链接,udp不需要链接而是直接发送,tcp需要先链接,只要链接成功才能通信
5. tcp客户端链接服务器时,服务器会有一个新的套接字,这个套接字用来标记这个客户端,单独为这个客户端服务
6. listen后的套接字是被动套接字,用来接收新的服务端的链接请求的,二accept返回的新套接字是用来标记这个心客户端的
7. 关闭listen后的套接字意味着被动套接字关闭,会导致新的客户端请求不能链接到服务器,但是之前已经链接成功的客户端正常通讯
8. 关闭accept返回的套接字,意味着这个客户端服务已经完成
9. 当客户端的套接字调用close后,服务器端会recv解堵塞,返回长度为0,因此服务器可以通过返回数据的长度来区别客户端是否已经下线
652e362cd279020e41057062301cd2a937be05c2
1. tcp服务器需要绑定,否则找不到这个服务器
2. tcp客户端一般不绑定,因为是主动链接服务器,所有只要确定好服务器的ip,port等信息就好,本地客户端可以随机
3. tcp服务器中通过listen可以将socket创建出来的主动套接字变成被动的,这个是做tcp服务时必须做的
4. 当客户端需要链接服务器时,需要使用connect进行链接,udp不需要链接而是直接发送,tcp需要先链接,只要链接成功才能通信
5. tcp客户端链接服务器时,服务器会有一个新的套接字,这个套接字用来标记这个客户端,单独为这个客户端服务
6. listen后的套接字是被动套接字,用来接收新的服务端的链接请求的,二accept返回的新套接字是用来标记这个心客户端的
7. 关闭listen后的套接字意味着被动套接字关闭,会导致新的客户端请求不能链接到服务器,但是之前已经链接成功的客户端正常通讯
8. 关闭accept返回的套接字,意味着这个客户端服务已经完成
9. 当客户端的套接字调用close后,服务器端会recv解堵塞,返回长度为0,因此服务器可以通过返回数据的长度来区别客户端是否已经下线