计算机网络

    科技2022-08-21  118

    文章目录

    osi七层模型应用层在浏览器地址栏键入URL,按下回车之后经历的流程常见的HTTP状态码Get和Post的区别Cookie和Session的区别HTTP与HTTPS的区别 传输层三次握手为什么是三次握手不是两次为什么传回SYN,为什么要传ACK? 四次挥手为什么是四次挥手 udp与tcp的区别tcp的流量控制--滑窗 Socket

    osi七层模型

    应用层

    在浏览器地址栏键入URL,按下回车之后经历的流程

    常见的HTTP状态码

    Get和Post的区别

    Cookie和Session的区别

    HTTP与HTTPS的区别

    传输层

    三次握手

    TCP首部 三次握手: 1、客户端的TCP向服务器的TCP发送一个只包含首部不包含应用层数据的TCP报文段,报文段的SYN(同步)位被置为1,随机初始化序号为x放在序号字段中。该报文段被封装在一个IP数据报中被发送给服务器。 2、包含TCP SYN报文段的IP数据被发送给服务器,服务器提取出TCP SYN报文段,并为该TCP连接分配TCP缓存和变量 ,向客户端TCP发送允许连接的SYNACK报文段。此时报文段也不含应用层数据,SYN位置1,ACK位置1,确认号x+1,序号是随机初始化为y。 3、客户端收到SYNACK报文后,给该连接分配缓存和变量,给服务器端发送一个报文段,对服务器允许连接的报文段进行了确认。其中TCP首部,序号x+1,确认号为y+1,由于连接已经建立,SYN位置0,ACK位置1。报文段中携带从客户端到服务器端的数据。

    简单理解 客户端->发送带有SYN标志位的数据包-一次握手->服务端 服务端->发送带有SYN/ACK标志的数据包-二次握手->客户端 客户端->发送带有ACK标志位的数据包-三次握手->服务端

    为什么是三次握手不是两次

    三次握手的目的是建立可靠的通信信道,即让客户端和服务端确认自己和对方的发送和接受都是正常的。 第一次握手:客户端什么都不能确认;服务端确认了自己的接收正常,对方发送正常。 第二次握手:客户端确认了自己的发送、接收正常、对方发送接受正常;服务端确认了自己的接受正常、对方发送正常。 第三次握手:客户端确认了自己的发送、接收正常、对方发送接受正常;服务端确认了自己的接受正常、对方发送正常。

    为什么传回SYN,为什么要传ACK?

    接收端传回发送端发送的SYN是为了告诉发送端,我接受到的信息就是你发送的; 用SYN证明了发送端到接收端的通道没有问题后,传ACK是为了证明接收端到发送端的通道没有问题。

    四次挥手

    断开一个TCP连接: 客户端-发送一个FIN,用来关闭客户端到服务端的数据传送; 服务器-收到这个FIN,发回一个ACK,确认序号为收到的序号+1。 服务器-关闭与客户端的链接,发送一个FIN给客户端; 客户端-发回ACK报文确认,并将确认序号设置为收到序号+1。

    为什么是四次挥手

    任何一方在数据传输完成后都可以发出连接释放的通知,待对方确认后就进入了半关闭状态。当另一方也没有数据再发送的时候,则发出连接释放通知,待对方确认后就完全关闭了TCP连接。

    udp与tcp的区别

    tcp的流量控制–滑窗

    Socket

    Processed: 0.044, SQL: 9