1. TCP的socket通信流程
服务端
1)socket----创建socket对象。
2)bind----绑定本机ip+port。
3)listen----监听来电,若在监听到来电,则建立起连接。
4)accept----再创建一个socket对象给其收发消息。原因是现实中服务端都是面对多个客户端,那么为了区分各个客户端,则每个客户端都需再分配一个socket对象进行收发消息。
5)read、write----就是收发消息了。
客户端
1)socket----创建socket对象。
2)connect----根据服务端ip+port,发起连接请求。
3)write、read----建立连接后,就可发收消息了。
注意服务端需要绑定ip+port,而客户端不需要。原因是:i)对于服务端,有以下特点:实际开发中是面对多个客户端的、需长时间提供服务、被动的等待被呼叫,这就要求服务端的ip+port固定,否则无法为客户端提供稳定服务;ii)对于客户端,其位置可能多变,并且是主动呼叫服务端,这样就导致其ip+port可能会经常变化,但这没关系,只要知道服务端的ip+port,客户端就可以呼过去,然后服务端根据来电地址,再回复信息。
原文地址:https://www.cnblogs.com/miaoning/p/10721277.html
时间: 2024-10-12 11:11:10