troubleasy

导航

 

客户端和服务器端的交互过程:

 

 

 socket作为网络连接和数据接收的接口,客户端和服务器端在连接前需要初始化socket;不同的主机通过ip+端口标识不同的功能接口;tcp和udp是两者进行交互的方式,tcp是面向连接的,udp是无连接的。

 

 

以tcp为例,

 

服务器端初始化socket,bind绑定ip和端口,listen监听端口,准备accept接收连接;

客户端初始化scoket,connect与服务器端连接;

数据传输过程:客户端向操作系统内核发起write字节流写操作,写入内核发送缓冲区,内核协议栈从发送缓冲区read并封装报文,通过网络设备传输到服务器端,服务器端从内核得到消息,将字节流从内核接收缓冲区read读入进程并处理。服务器端以同样的方式写给客户端。

udp方式的交互过程,无需连接过程,适合实时的数据传输,允许数据传输有误差;

 

posted on 2020-06-16 15:16  troubleasy  阅读(137)  评论(0编辑  收藏  举报