Socket通信原理
Socket 通信原理
Socket 博客地址
Socket 是一组调用接口、是 { 应用层与 TCP/IP 协议族 } 通信的中间软件抽象层 . 调用接口是 TCP/IP 协议族的 API 函数
TCP/IP协议族包括传输层、网络层、链路层 TCP、UDP、IP、ICMP、IGMP、ARP、RARP
Socket接口将复杂的TCP/IP协议族隐藏,给用户提供一组简单的接口就是全部,让Socket去组织数据以符合指定的协议。
socket的基本操作
socket()函数、bind()函数、listen()函数、
connect()函数、accept()函数、
read()函数、write()函数、close()函数等
Unix/Linux基本哲学之一就是一切皆文件
都可以用 open –> write/read –> close 模式来操作
服务器端: socket() —> bind() —> listen() —> accept() —> read() || write() —> close()
—客户端: socket() —> connect() —> wirte() || read() —> close()
服务器:创建并初始化socket实例、绑定端口号、监听端口号、阻塞等待客户端连接
客户端:创建并初始化socket实例、连接服务器、连接成功即TCP双向通信通道建立
客户端发送请求数据、服务器接受请求数据、
服务器处理请求数据、
服务器发送响应数据、客户端接受响应数据、
客户端与服务器关闭连接,此双向交互结束。