面向连接协议的Socket编程模型:
引用内容
服务器 客户机
Socket()
↓
bind()
↓
listen()
↓
accept() socket()
↓ ↓
阻塞,等待客户数据←建立连接---connect()
↓ ↓
recv()←----------请求数据-----send()
↓ ↓
send()-----------应答数据---→recv()
↓ ↓
close() close()
Socket()
↓
bind()
↓
listen()
↓
accept() socket()
↓ ↓
阻塞,等待客户数据←建立连接---connect()
↓ ↓
recv()←----------请求数据-----send()
↓ ↓
send()-----------应答数据---→recv()
↓ ↓
close() close()
面向无连接协议的Socket编程模型:
引用内容
服务器 客户机
Socket()
↓
bind() socket()
↓ ↓
recvfrom() bind()
↓ ↓
阻塞,等待客户数据 ↓
↓←-----------建立连接---sendto()
↓ ↓
recv()←---------请求数据---send()
↓ ↓
处理服务请求 ↓
↓ ↓
sendto()------服务应答-→recvfrom()
↓ ↓
close() close()
Socket()
↓
bind() socket()
↓ ↓
recvfrom() bind()
↓ ↓
阻塞,等待客户数据 ↓
↓←-----------建立连接---sendto()
↓ ↓
recv()←---------请求数据---send()
↓ ↓
处理服务请求 ↓
↓ ↓
sendto()------服务应答-→recvfrom()
↓ ↓
close() close()