1.1
面向连接的套接字通信工作流程
为了实现服务器与客户机的通信,服务器和客户机都必须建立套接字。服务器与客户机的工作原理可以
用下面的过程来描述。
(1)
服务器先用
socket
函数来建立一个套接字,用这个套接字完成通信的监听。
(2)
用
bind
函数来绑定一个端口号和
IP
地址。
因为本地计算机可能有多个网址和
IP
,
每一个
IP
和端口
有多个端口。需要指定一个
IP
和端口进行监听。
(3)
服务器调用
listen
函数,使服务器的这个端口和
IP
处于监听状态,等待客户机的连接。
(4)
客户机用
socket
函数建立一个套接字,设定远程
IP
和端口。
(5)
客户机调用
connect
函数连接远程计算机指定的端口。
(6)
服务器用
accept
函数来接受远程计算机的连接,建立起与客户机之间的通信。
(7)
建立连接以后,客户机用
write
函数向
socket
中写入数据。也可以用
read
函数读取服务器发送来
的数据。
(8)
服务器用
read
函数读取客户机发送来的数据,也可以用
write
函数来发送数据。
(9)
完成通信以后,用
close
函数关闭
socket
连接。
客户机与服务器建立面向连接的套接字进行通信,请求与响应过程可用图来表示。