OSI七层网络模型
七层模型从下往上分别是: 物理层、链路层、网络层、传输层、会话层、表示层、应用层,越底层越接近硬件,越往上越接近软件
- 物理层 : 七层模型中最底下的一层,直接操作原始的比特流数据(0 和 1),是直接操作硬件的一层
- 数据链路层: 两个相邻节点之间传输数据
- 网络层: 选择路由并正确找到主机
- 传输层: 主机之间端对端的数据连接与传输
- 会话层: 应用程序之间的会话能力,不同的软件数据分发给不同的软件
- 表示层:
- 应用层: 各种应用程序
七层模型只是一个理想的状态,实际用的是 TCP/IP 四层模型,四层模型是将七层模型上三层,合并为应用层,传输层还是传输层,网络层也是网络层,最底下两层合并为一层,数据链路层
TCP 三次握手和四次挥手
三次握手,一般都是客户端主动向服务器发起连接请求,第一次,客户端向服务端主动发起连接请求,这个时候服务器知道了客户端的发数据的能力,但是服务器还不知道客户端收数据的能力,同时客户端也不知道服务器收发数据的能力,所以第二次,服务端向客户端返回一个请求,表示服务端收到了客户端的请求,然后这个时候,客户端收到了服务端的请求,但是这时候服务端还是不知道,客户端收到数据没有,所有有了第三次,客户端向服务端在发起一次请求,这个就是三次握手
那么四次挥手的呢,其实建立在三次握手的前提上,首先,也是客户端主动向服务端发起请求,第一次,请求断开连接,然后这个时候,客户端不会在发信息了,但是还有接消息的能力,这个时候,服务端收到了客户端发过来的一个请求关闭连接的请求,然后第二次,服务器向客户端发送,好的,我已经知道你要关闭连接了,这个时候,由于可能服务端还有数据没发完,那么同时,又会第三次,向客户端发送请求,表示数据都已经发完了,然后这个时候,客户端收到了服务端的请求,则会又向服务端正式发动一个请求(第四次)正式关闭的请求,然后就TCP连接就算关闭了