协议: 网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。
网络协议主要由三个要素组成:
(1) 语义:语义是解释控制信息每个部分的意义。他规定了需要发出何种控制信息,以及完成的动作与做出什么样的响应。
(2)语法:语法是用户数据与控制信息的结构与格式,以及数据出现的顺序。
(3)时序:时序是对事件发生顺序的详细说明。(也可以称为"同步")
语义表示要做什么,语法表示要怎么做,时序表示做的顺序
OSI模型:开放式系统互联(参考模型,不是强制标准)
七层标准:物理层(光纤网络,建立维护物理连接)、数据链路层(网桥,网卡,交换机,链路复用)、网络层(IP协议所在,路由器进行路径选择)、传输层(TCP建立连接,用一个寻址机制来识别一个特定的应用程序-端口)、会话层(建立管理会话)、表示层(安全、加密解密,数据表示、数据压缩)、应用层(与客户进程交互的)。
测试一般:应用层、表示层、会话层、网络层。
TCP/IP模型
Tcp协议:传输控制协议
传输:建立连接(三次握手),关闭连接 (四次挥手)
控制:保证可靠
三次握手
第一次:客户端发送SYN包至服务器,并且进入SYN_SENT状态,等待服务器确认。
第二次:服务器收到客户端的SYN包,发送一个ACK,同时发送自己的SYN,此时服务器进入SYN_RECV状态。
第三次:客户端收到服务器SYN+ACK后,进入ESTABLISHEN状态,并且发送服务器SYN包的确认ACK,服务器接受到客户端ACK后,进入ESTABLISHED状态,当客户端和服务端都进入ESTABLISHED状态后,客户端服务端就可以进行数据传递。
UDP协议:和TCP差别最大的区别就是保证可靠,没有三次挥手,但是性能比较好。
四次挥手
第一次:主动关闭方发送一个FIN并进入FIN_WAIT1状态
第二次:被动关闭方接收到主动关闭方发送的FIN并发送ACK,此时被动关闭方进入CLOSE_WAIT状态,主动关闭方收到被动关闭方的ACK后,进入FIN_WAIT2状态
第三次挥手:被关闭方发送一个FIN并进入LAST_ACK状态
第四次挥手:主动关闭方收到被动关闭方发送的FIN并发送ACK,此时主动关闭方进入TIME_WAIT状态,经过2MSL(2个生命周期)时间后关闭连接,被动关闭方收到主动关闭方的ACK后关闭连接。