首页 > 其他分享 >计算机网络HTTP介绍

计算机网络HTTP介绍

时间:2023-02-09 12:37:44浏览次数:42  
标签:Web HTTP 请求 报文 介绍 计算机网络 TCP 连接


1. HTTP概述

HTTP即为超文本传输协议(HyperText Transfer Protocol)。

Web应用的应用层协议,定义浏览器如何向Web服务器发送请求,以及Web服 务器如何进行响应。

主要版本:HTTP/1.0 和 HTTP/1.1

2. HTTP连接

浏览器在向服务器发送请求之前,首先建立TCP连接,然后才发送 HTTP请求报文,接收HTTP响应报文。

计算机网络HTTP介绍_计算机网络

RTT:作为一个时间单位来使用。

HTTP客户进程向服务器请求建立连接,从客户发送连接请求,到收到服务器连接确认,用时一个往返时间(Round Trip Time , RTT)。

计算机网络HTTP介绍_Web_02

根据TCP的策略不同,分为非持久连接的HTTP与持久连接的HTTP。

2.1. 非持久连接;

客户与服务器建立TCP连接后,通过该连接发送HTTP请求报文, 接收HTTP响应报文,然后断开TCP连接。

1. 一条连接;

每次请求一个资源都要重新建立链接,获取资源后断开连接,下次重新建立连接,HTTP 1.0的为这种连接方式。

下面以请求浏览一个引用3个图片的Web页面为例,说明其过程。

计算机网络HTTP介绍_Web_03

由上图可知,在非持久连接HTTP的情况下,请求引用3个图片的Web页面响应时间需要8个RTT。

2. 多条连接;

通过建立多条并行TCP连接,并行发送HTTP请求和并行接收HTTP 响应,然后断开TCP 连接。

下面以请求浏览一个引用3个图片的Web页面为例,说明其过程。

计算机网络HTTP介绍_计算机网络_04

由上图可知,在持久连接HTTP的情况下,请求引用3个图片的Web页面响应时间需要4个RTT。

2.2. 持久连接;

1. 非流水方式持久连接;

非流水方式持久连接也称非管道方式持久连接,客户端收到响应报文后, 不断开TCP连接,继续请求剩下的资源。

下面以请求浏览一个引用3个图片的Web页面为例,说明其过程。

计算机网络HTTP介绍_HTTP_05

由上图可知,在非流水方式持久连接的HTTP情况下,请求引用3个图片的Web页面响应时间需要5个RTT。

2. 流水方式持久连接;

流水方式持久连接也称管道方式持久连接,客户端在接收到前一个响应报文后,不断开连接,继续并行请求剩下的资源,HTTP 1.1的为这种连接方式。

下面以请求浏览一个引用3个图片的Web页面为例,说明其过程。

计算机网络HTTP介绍_HTTP_06

由上图可知,在流水方式持久连接的HTTP情况下,请求引用3个图片的Web页面响应时间需要3个RTT。

2.3. 应用题;

某网页URL为"http://www.abc.com/index.html",且该URL对应的IP地址在你的计算机上没有缓存,文件index.html引用了 8个小图像。在域名解析的过程中,无等待的一次DNS解析请求与响应时间记为 RTTd,HTTP请求传输Web对象过程的一次往返时间记为RTTh。试给出:

1. 该URL中的域名。

答:www.abc.com

2. 浏览器解析到该URL对应的IP地址的最短时间和最长时间。

答:最短时间:本地域名服务器有被查询域名信息,则直接得到被查域名的IP地址,即此时需要最短时间1RTTd。最长时间:本地域名服务器没有被查询域名信息,则查询根域名服务器,顶级域名服务器abc.com, 直到查询到被查询域名主机的权威域名服务器www.abc.com,即此时需要最长时间4RTTd,查询顺序:本地+根+顶级+权威。

3. 若浏览器没有配置并行TCP连接,则基于HTTP1.0获取该Web页的完整内容(包括引用的图像)所需要的时间(不包括域名解析时间)。

答:18RTTh

计算机网络HTTP介绍_HTTP_07

4. 若浏览器配置5个并行TCP连接,则基于HTTP1.0获取该Web页的完整内容(包括引用的图像)需要 的时间(不包括域名解析时间)。

答:6RTTh

计算机网络HTTP介绍_计算机网络_08

5. 若浏览器没有配置并行TCP连接,则基于非流水方式的HTTP1.1获取该Web 页完整内容需要的时间 以及基于流水方式的HTTP1.1获取该Web页的完整内容(包括引用的图像)需要的时间(不包括域名解 析时间)。

答:非流水方式:10RTTh

计算机网络HTTP介绍_计算机网络_09

流水方式:3RTTh

计算机网络HTTP介绍_计算机网络_10

3. HTTP报文

HTTP报文分为请求报文和响应报文,请求报文为浏览器发送给Web服务器,响应报文为Web服务器发送给浏览器。

计算机网络HTTP介绍_HTTP_11

请求报文中的方法主要有以下这些:

计算机网络HTTP介绍_计算机网络_12

响应报文中的状态码:3位十进制数,利用第一位十进制数字区分5类状态码。

计算机网络HTTP介绍_Web_13

 常见的HTTP状态码如下:

计算机网络HTTP介绍_HTTP_14

4. Cookie机制

HTTP服务器不保存客户的任何信息,被称为无状态协议,为了对用户进行跟踪,引入了Cookie机制,Cookie是一个小型文本文件,网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据。

Cookie技术主要包括4部分内容:

1. HTTP响应报文中的Cookie头行:用户的Cookie ID,用户偏好等;

2. 用户浏览器在本地存储、维护和管理的Cookie文件;

3. HTTP请求报文中的Cookie头行:用户已访问过的网站再次访问时,浏览器会检索本地Cookie文件;

4. 网站在后台数据库中存储、维护Cookie信息:分配用户ID、每个ID用户在本网站的访问特征等;

标签:Web,HTTP,请求,报文,介绍,计算机网络,TCP,连接
From: https://blog.51cto.com/u_15959833/6046783

相关文章

  • 计算机网络域名系统
    1.域名系统域名系统(DNS)的主要功能是将域名进行解析,即将域名映射为IP地址。域名解析的原理:为了实现域名解析,域名系统会建立分布式数据库,存储域名与IP地址的映射关系数据。2.......
  • 计算机网络之应用层-FTP、P2P、Socket编程
    1.FTPFTP即文件传送协议(FileTransferProtocol),用于在互联网的两个主机间实现文件互传的网络应用的应用层协议。FTP的服务器进程由两大部分组成:1.主进程, 负责接受新......
  • 计算机网络性能相关名词介绍
    1.速率与带宽速率:网络单位时间内传送的数据量,用以描述网络传输数据的快慢。带宽:在通信和信号处理领域,指的是信号的频带宽度,单位:Hz(赫兹)。在计算机网络领域,指的是一条信道的......
  • 计算机网络体系结构
    计算机网络所划分的层次以及各层协议的集合即为计算机网络体系结构。常见的三种划分方法:1.OSI参考模型国际标准化组织:开放系统互连(OpenSystemInterconnection,OSI)参考模......
  • 计算机网络之网络层- IPv4协议
    IPv4协议:Internet网络层最核心的协议。定义了如何封装上层协议(如UDP、TCP)的报文段;定义了Internet网络层寻址(IP地址)以及如何转发IP数据报等内容。1. IP数据报格式1. ......
  • Mybatis类型转换介绍
    1.2建立TypeHandler我们知道java有java的数据类型,数据库有数据库的数据类型,那么我们在往数据库中插入数据的时候是如何把java类型当做数据库类型插入数据库,在从数据库读取......
  • RPC调用和HTTP调用的区别
    很长时间以来都没有怎么好好搞清楚RPC(即RemoteProcedureCall,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~Naive!本文简单地......
  • 【学习笔记】Http请求方法总结
    Http常用请求方法对比请求方法常见参数传递方式是否幂等说明API举例GETURL,注意:Http协议对URL长度没有限制,所谓的限制是浏览器和处理服务器的幂等用于查询......
  • 自我介绍与学习记录
    这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzzcxy/2023learning这个作业要求在哪里:https://edu.cnblogs.com/campus/fzzcxy/2023learning/homework/12898这个......
  • 真正“搞”懂HTTP协议11之代理服务
    代理,其实全称应该叫做代理服务器,它是客户端与服务器之间得中间层,本质上来说代理就是一个服务器,在HTTP的链路中插入的一个中间环节,就是代理服务器啦。所谓的代理服务就......