HTTP协议小知识

作者: 全世界最酷的李大厨 | 来源:发表于2020-03-03 10:35 被阅读0次

HTTP是一种通信协议,构建在TCP/IP协议之上的,是TCP/IP协议的一个子集。下图展示了HTTP事务处理过程。当客户端访问WEB站点时,首先会通过DNS服务查询到域名的IP地址。然后浏览器生成HTTP请求,并通过TCP/IP协议发送给Web服务器。Web服务器接受到请求后会根据请求生成响应内容,并通过TCP/IP协议返回给客户端。

image.png

而对应的结构如下:

image.png
  • 应用层一般是我们编写的应用程序,决定了向用户提供的应用服务。应用层可以通过系统调用与传输层进行通信,如:FTP,DNS,HTTP

  • 传输层通过系统调用向应用层提供处于网络连接中的两台计算机之间的数据传输功能。在传输层中有两个性质不同的协议:TCP和UDP

  • 网络层用来处理在网络中流动的数据包。该层规定了通过怎样的路径到达对方计算机,并把数据包传输给对方

  • 链路层用来处理连接网络的硬件部分。包括控制操作系统。硬件设备驱动等。

数据包的封装过程

TTP

传输层-TCP三次握手

使用TCP协议进行通信的双方必须先建立连接,然后才能开始传输数据。为了确保连接双方的可靠性,在双方建立连接时,TCP协议采用三次握手的策略,UDP不用。

image.png
  • 第一次握手:客户端发送带有SYN标志的连接请求报文段,然后进入SYN_SEND状态,等待服务端确认 (证明甲有发送的能力)

  • 第二次握手:服务端接受到客户端的SYN报文段后,需要发送ACK信息对这个SYN报文段进行确认,同时还要发送自己的SYN请求信息。服务端会将上述的信息放到一个报文段(SYN+ACK)中,一并发送给客户端,此时服务端将会进入SYN_RECV状态。(证明乙有接受和发送的能力,证明甲发送成功的标志)

  • 第三次握手:客户端接受到服务端的SYN+ACK报文段后,会向服务端发送ACK确认报文段,这个报文段发送完毕后,客户端和服务端都进入ESTABLISHED状态,自此完成TCP三次握手(证明乙发送成功,开始连接)

HTTP报文头

image.png image.png image.png image.png

相关文章

  • HTTP协议小知识

    HTTP是一种通信协议,构建在TCP/IP协议之上的,是TCP/IP协议的一个子集。下图展示了HTTP事务处理过程...

  • 面试题

    其他知识点: http协议面试: http定义: 什么是Http无状态协议,怎么解决Http协议无状态协议1.无状...

  • 面试中学点用的HTTP协议基础知识点点滴滴

    HTTP协议 HTTP协议作为网络传输的基本协议,有着广泛的应用。 HTTP协议的完整内容很多,但是其核心知识却又...

  • Web应用框架——Django框架(了解+虚拟环境中的安装)

    一.Djangjo前置知识 1.Http相关 1.1Http请求协议: Http协议是Hyper Text Tra...

  • 期末总结

    #期末总结 ---------- + 了解学习了HTTP协议和有关HTTP协议的一些知识,例如:HTTP首部、报文...

  • HTTP协议笔记

    HTTP协议笔记 标签(空格分隔): HTTP,TCP/IP [TOC] 1.网络协议基础知识 TCP/IP协议族...

  • JavaWeb总结

    1、WEB开发基本知识 HTTP协议:HTTP协议是Hyper Text Transfer Protocol(超文...

  • HTTP协议 知识汇总

    HTTP协议 1.简介 HTTP协议(Hyper Text Transfer Protocol,超文本传输协议),...

  • http协议知识普及

    今天给大家普及一下http协议相关的知识。 平时我们家里上网必须用我们电脑手机等电子设备连接有线或者无线进行联网才...

  • http协议知识整理

    面试的时候总是会有关于http协议的问题,通过查找资料,我把知识点总结一下。 1、说一下什么是Http协议? 对器...

网友评论

    本文标题:HTTP协议小知识

    本文链接:https://www.haomeiwen.com/subject/kfxqlhtx.html