Visual C++ 2017网络编程实战
上QQ阅读APP看书,第一时间看更新

第5章 ◄ TCP套接字编程 ►

5.1 TCP套接字编程的基本步骤

流式套接字编程针对的是TCP协议通信,即面向连接的通信,分为服务器端和客户端两个部分,分别代表两个通信端点。下面看一下流式套接字编程的基本步骤。

服务器端编程的步骤:

(1)加载套接字库(使用函数WSAStartup),创建套接字(使用socket)。

(2)绑定套接字到一个IP地址和一个端口上(使用函数bind)。

(3)将套接字设置为监听模式等待连接请求(使用函数listen),这个套接字就是监听套接字了。

(4)请求到来后,接受连接请求,返回一个新的对应于此次连接的套接字(accept)。

(5)用返回的新的套接字和客户端进行通信,即发送或接收数据(使用函数send或 recv),通信结束就关闭这个新创建的套接字(使用函数closesocket)。

(6)监听套接字继续处于监听状态,等待其他客户端的连接请求。

(7)如果要退出服务器程序,就先关闭监听套接字(使用函数closesocket),再释放加载的套接字库(使用函数WSACleanup)。

客户端编程的步骤:

(1)加载套接字库(使用函数WSAStartup),创建套接字(使用函数socket)。

(2)向服务器发出连接请求(使用函数connect)。

(3)和服务器端进行通信,即发送或接收数据(使用函数send或 recv)。

(4)如果要关闭客户端程序,就先关闭套接字(使用函数closesocket),再释放加载的套接字库(使用函数WSACleanup)。