http权威指南读书笔记第一天

第一节:http简介
http请求报文

在这里插入图片描述

HTTP 是个应用层协议
因特网传输协议 TCP/IP
无差错的数据传输;
• 按序传输(数据总是会按照发送的顺序到达);
• 未分段的数据流(可以在任意时刻以任意尺寸将数据发送出去)。

网络协议栈
在这里插入图片描述
在 HTTP 客户端向服务器发送报文之前,需要用网际协议(Internet Protocol,IP) 地址和端口号在客户端和服务器之间建立一条 TCP/IP 连接。 建立一条 TCP 连接的过程与给公司办公室的某个人打电话的过程类似。
默认端口号是 80

http传输过程
在这里插入图片描述
Web 浏览器和 Web 服务器
是如何相互发送报文来实现基本事务处理的
代理
位于客户端和服务器之间的 HTTP 中间实体。
代理 还可以对请求和响应进行过滤。

  1. 缓存 HTTP 的仓库,使常用页面的副本可以保存在离客户端更近的地方。 Web 缓存(Web cache)或代理缓存(proxy
    cache)是一种特殊的 HTTP 代理服务 器,可以 将经过代理传送的常用文档复制保存起来 客户端从附近的缓存下载文档会比从远程
    Web 服务器下载快得多
  2. 网关 连接其他应用程序的特殊 Web 服务器。 网关(gateway)是一种特殊的服务器,作为其他服务器的中间实体使用。通常用于 将
    HTTP 流量转换成其他的协议

在这里插入图片描述

  1. 隧道 对 HTTP 通信报文进行盲转发的特殊代理。 建立起来之后,就会在两条连接之间对原始数据进行盲转发的 HTTP 应用程序
    HTTP 隧道的一种常见用途是通过 HTTP 连接承载加密的安全套接字层(SSL, Secure Sockets
    Layer)流量,这样 SSL 流量就可以穿过只允许 Web 流量通过的防 火墙了

理解:http隧道可以看作为是用于突破防火墙限制的管道,它不会窥探管道内装载什么,可以用作木马传输的工具,正常情况下用作ssl数据穿过防火墙。

在这里插入图片描述

  1. Agent 代理

用户 Agent 代理(或者简称为 Agent 代理)是代表用户发起 HTTP 请求的客户端程 序。 所有发布 Web 请求的应用程序都是 HTTP Agent 代理。
发起自动 HTTP 请求的半智能 Web 客户端(爬虫)
在这里插入图片描述

![在这里插入图片描述](https://img-blog.csdnimg.cn/2018110515081780.png


第二节:连接管理

HTTP 连接实际上就是 TCP 连接和一些使用连接的规则。
TCP 的数据是通过名为 IP 分组(或 IP 数据报)的小数据块来发送的。
HTTP 就是“HTTP over TCP over IP”这个“协议栈”中的最顶层 了。其安全版本 HTTPS 就是在 HTTP 和 TCP 之间插入了一个(称为 TLS 或 SSL 的)密码加密层
在这里插入图片描述
HTTP 要传送一条报文时,会以流的形式将报文数据的内容通过一条打开的 TCP 连 接按序传输。TCP 收到数据流之后,会将数据流砍成被称作段的小数据块,并将段 封装在 IP 分组中,通过因特网进行传输
每个 TCP 段都是由 IP 分组承载,从一个 IP 地址发送到另一个 IP 地址的。每个 IP 分组中都包括: 一个IP分组首部(通常为20字节);
一个 TCP 段首部(通常为 20 字节);
一个 TCP 数据块(0 个或多个字节)。
IP 首部包含了源和目的 IP 地址、长度和其他一些标记。TCP 段的首部包含了 TCP 端口号、TCP 控制标记,以及用于数据排序和完整性检查的一些数字值。
在这里插入图片描述

tcp性能篇:
在这里插入图片描述
事务处理时间可能 是很短的。除非客户端或服务器超载,或正在处理复杂的动态资源,

HTTP 事务的时延有以下几种主要原因。
(1) 客户端首先需要根据 URI 确定 Web 服务器的 IP 地址和端口号。如果最近没有对 URI 中的主机名进行访问,通过 DNS 解析系统将 URI 中的主机名转换成一个 IP 地址可能要花费数十秒的时间 3。
(2) 接下来,客户端会向服务器发送一条 TCP 连接请求,并等待服务器回送一个请 求接受应答。每条新的 TCP 连接都会有连接建立时延。这个值通常最多只有一 两秒钟,但如果有数百个 HTTP 事务的话,这个值会快速地叠加上去。
(3) 一旦连接建立起来了,客户端就会通过新建立的 TCP 管道来发送 HTTP 请求。 数据到达时,Web 服务器会从 TCP 连接中读取请求报文,并对请求进行处理。
(4) 然后,Web 服务器会回送 HTTP 响应,这也需要花费时间。
这些 TCP 网络时延的大小取决于硬件速度、网络和服务器的负载,请求和响应报文 的尺寸,以及客户端和服务器之间的距离。TCP 协议的技术复杂性也会对时延产生 巨大的影响。

最常见的 TCP 相关时延,
其中包括:
TCP 连接建立握手;
TCP 慢启动拥塞控制;
数据聚集的 Nagle 算法;
用于捎带确认的 TCP 延迟确认算法;
TIME_W AIT 时延和端口耗尽。
tcp三次握手
在这里插入图片描述
TCP 连接握手需要经过以下几个步骤。
(1) 请求新的 TCP 连接时,客户端要向服务器发送一个小的 TCP 分组(通常是 40 ~ 60 个字节)。这个分组中设置了一个特殊的 SYN 标记,说明这是一个连接请求。

(2) 如果服务器接受了连接,就会对一些连接参数进行计算,并向客户端回送一个 TCP 分组,这个分组中的 SYN 和 ACK 标记都被置位,说明连接请求已被接受

(3) 最后,客户端向服务器回送一条确认信息,通知它连接已成功建立
现代的 TCP 栈都允许客户端在这个确认分组中发送数据。
小的 HTTP 事务可能会在 TCP 建立上花费 50%,或更多的时间 。可以通过重用现存连接,来减小这种 TCP 建立时延所造成 的影响 。

.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
。支持yolov5s,yolov5m,yolov5l.zip目标检测(Object Detection)是计算机视觉领域的一个核心问题,其主要任务是找出图像中所有感兴趣的目标(物体),并确定它们的类别和位置。以下是对目标检测的详细阐述: 一、基本概念 目标检测的任务是解决“在哪里?是什么?”的问题,即定位出图像中目标的位置并识别出目标的类别。由于各类物体具有不同的外观、形状和姿态,加上成像时光照、遮挡等因素的干扰,目标检测一直是计算机视觉领域最具挑战性的任务之一。 二、核心问题 目标检测涉及以下几个核心问题: 分类问题:判断图像中的目标属于哪个类别。 定位问题:确定目标在图像中的具体位置。 大小问题:目标可能具有不同的大小。 形状问题:目标可能具有不同的形状。 三、算法分类 基于深度学习的目标检测算法主要分为两大类: Two-stage算法:先进行区域生成(Region Proposal),生成有可能包含待检物体的预选框(Region Proposal),再通过卷积神经网络进行样本分类。常见的Two-stage算法包括R-CNN、Fast R-CNN、Faster R-CNN等。 One-stage算法:不用生成区域提议,直接在网络中提取特征来预测物体分类和位置。常见的One-stage算法包括YOLO系列(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOv5等)、SSD和RetinaNet等。 四、算法原理 以YOLO系列为例,YOLO将目标检测视为回归问题,将输入图像一次性划分为多个区域,直接在输出层预测边界框和类别概率。YOLO采用卷积网络来提取特征,使用全连接层来得到预测值。其网络结构通常包含多个卷积层和全连接层,通过卷积层提取图像特征,通过全连接层输出预测结果。 五、应用领域 目标检测技术已经广泛应用于各个领域,为人们的生活带来了极大的便利。以下是一些主要的应用领域: 安全监控:在商场、银行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值