[杂学笔记]OSI七层模型作用、HTTP协议中的各种方法、HTTP的头部字段、TLS握手、指针与引用的使用场景、零拷贝技术

1.OSI七层模型作用

  • 物理层:负责光电信号的传输,以及将光电信号转化为二进制数据
  • 数据链路层:主要负责将收到的二进制数据进一步的封装为数据帧报文。同时因为数据在网络中传递的时候,每一个主机都能够收到报文数据,该层的MAC地址就阻止了并非传递给本主机的数据进一步向上交付。
  • 网络层:主要负责地址管理和路由选择,通过IP地址和内部维护的路由表,可以将数据传输到指定的目标主机上。一个报文在网络中并非是直达目标主机的,中间会经历无数个路由器设备,那么如何知道报文该走哪一条路线呢?就是网络层完成的工作了。
  • 传输层:主要负责两个主机进程的数据传输工作,确保数据可以以用户想要的方式进行传输。如果想要可靠的传输就采用TCP协议传输,如果想追求效率和实时性等就使用UDP协议进行网络传输。
  • 会话层:负责管理不同主机之间的连接。一个主机同一时间会和多个主机进行网络通信,那么就需要将这些连接管理起来。
  • 表示层:负责字符流数据的序列化和发序列化处理。
  • 应用层:负责实现网络服务的功能。对于服务器来说,就需要实现对客户端发送请求的解析工作,并对不同请求提供不同的服务,对于客户端来说,就需要有发送请求和解析响应数据的能力了。这些都是在应用层实现的。

        对于上三层主要的作用就是实现网络服务的,下面四层主要是负责两个主机之间的数据传递工作。

2.HTTP协议中的各种方法

  • GET:用于从服务器获取资源。他的请求参数会附加在URL后面,以键值对的形式存在。
  • POST:用于向服务器提交数据,通常服务器接收之后,会创建相应的实体,例如在数据库表中添加一条数据。他的请求参数会放在请求正文中。
  • PUT:用于向服务器上传指定的资源,通常用于更新已经存在的资源。通常是整体性的更新。
  • DELETE:用于请求服务器删除指定的资源。

3.HTTP的头部字段

  • 请求报文:请求行 + 属性字段。请求行分为:方法、url以及HTTP协议版本。
  • 响应报文:状态行 + 属性字段。状态行分为:HTTP协议版本、响应码以及响应码解释字段。

4.TLS握手

        TLS握手就是HTTPS进行密钥协商的一个过程。HTTPS协议加密采用的是非对称加密、CA认证进行密钥协商,以及对称加密的方式进行数据加密。首先服务端会先生成一对非对称密钥,然后将公钥和一些域名、申请者等相关信息生成.csr文件之后,向CA机构申请证书,CA机构认证后,会将证书内置给服务端。

        当有客户端想要进行连接的时候,服务端会先将带有公钥的CA认证证书发给客户端,客户端会使用CA机构的公钥解密签名,并将数据指纹与明文信息进行对比操作,防止中间人篡改公钥。之后生成一个对称密钥,并使用公钥进行加密操作,传递给服务器,服务器使用私钥进行解密,就完成了TLS握手的操作。

5.指针和引用的使用场景

        指针就是一个地址,他内部存放了区域的起始地址。可以用于接收动态分配的内存,在处理字符串和数组的时候,可以使用指针的算术运算,快速的定位元素,在创建数据结构的时候尤其是树和链表结构会大量的使用指针。对于引用来说底层的原理也是一个指针,只不过上层看起来是一个变量的别名,可以起到简化代码的操作。两者在传参和函数返回值的场景下,可以减少数据的拷贝工作。

6.零拷贝技术

介绍

        零拷贝技术是一种高效的数据传输技术,其核心目标就是减少在计算机系统在传输数据时的拷贝次数,从而降低CPU的使用率,提供数据传输效率,提供系统的性能。

        例如在从磁盘中读取数据并通过网络发送的过程当中就涉及到至少四次的拷贝。第一次拷贝:操作系统将数据从磁盘读取到内核空间的缓冲区。第二次拷贝:将数据从内核空间缓冲区拷贝到用户空间的应用程序缓冲区。第三次拷贝:应用程序处理完数据后,将数据从用户空间缓冲区拷贝回内核空间的套接字缓冲区。第四次拷贝:最后将数据从套接字缓冲区拷贝到网卡设备,通过网络发送出去。

        同时,在用户空间和内核空间之间的切换也会带来额外的开销,这种多次拷贝和上下文切换会消耗大量的 CPU 资源,降低系统的整体性能。

实现方式以及原理
  • 内存映射:使用mmap系统调用接口,可以将磁盘文件映射到用户虚拟地址空间当中,这样用户空间和内核空间可以共享一块物理内存。所以程序也可以直接访问这块内存,避免了数据从内核空间到用户空间的一次拷贝。否则的话,需要进行系统调用,进行文件的读取,然后层层拷贝到用户缓冲区,这样的话就涉及到了操作系统的参与,就需要进行内核态与用户态的转化操作了。
  • sendfile接口:允许内核直接将数据从磁盘文件传输到网络套接字文件中,无需将数据拷贝到用户空间了。相当于在内核空间完成数据的读取和发送。减少了两次拷贝。
  • 分散/聚集I/O操作:在用户层创建多个缓冲区,并允许内核一次将数据从多个缓冲区的数据聚集在一起发送,相当于将多次拷贝转化为了一次拷贝操作。或者将数据一次拷贝分散到多个缓冲区当中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/978224.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视频字幕识别和翻译

下载的视频很多不是汉语的,我们需要用剪映将语音识别出来作为字幕压制到视频中去。 剪映6.0以后语音识别需要收费,但是低版本还是没有问题。 如果想要非汉语字幕转成中文,剪映低版本不提供这样功能。但是,用剪映导出识别字幕&am…

Rust语言基础知识详解【一】

1.在windows上安装Rust Windows 上安装 Rust 需要有 C 环境,以下为安装的两种方式: 1. x86_64-pc-windows-msvc(官方推荐) 先安装 Microsoft C Build Tools,勾选安装 C 环境即可。安装时可自行修改缓存路径与安装路…

mapbox基础,使用geojson加载fill-extrusion三维填充图层

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象1.2 ☘️mapboxgl.Map style属性1.3 ☘️fill-extrusion三维填充图层样式二、�…

用Python3脚本实现Excel数据到TXT文件的智能转换:自动化办公新姿势

文章目录 用Python3实现Excel数据到TXT文件的智能转换:自动化办公新姿势场景应用:为什么需要这种转换?技术解析:代码实现详解核心代码展示改进点说明 实战演练:从Excel到TXT的完整流程准备数据示例(data.xl…

llaMa模型的创新

LLaMa介绍 LLaMa是基于transformer encoder的生成式模型。 目前有:LLAMA, LLAMA2, LLAMA3 三个大的版本 论文 LLAMA 2: Open Foundation and Fine-Tuned Chat Models: https://arxiv.org/pdf/2307.09288 LLAMA 3: The Llama 3 Herd of Models https…

神经网络 - 激活函数(Sigmoid 型函数)

激活函数在神经元中非常重要的。为了增强网络的表示能力和学习能力,激活函数需要具备以下几点性质: (1) 连续并可导(允许少数点上不可导)的非线性函数。可导的激活函数可以直接利用数值优化的方法来学习网络参数. (2) 激活函数及其导函数要尽可能的简单&#xff0…

PINN求解固体力学问题——论文加代码

PINN求解固体力学问题——论文加代码 1. 训练2. 可视化论文:Physics-Informed Deep Learning and its Application in Computational Solid and Fluid Mechanics 基本问题: 网格: 1. 训练 # %load Plane_Stress_W-PINNs.py """ Forward Problem for Plan…

ktransformers 上的 DeepSeek-R1 671B open-webui

ktransformers 上的 DeepSeek-R1 671B open-webui 一、下载GGUF模型1. 创建目录2. 魔塔下载 DeepSeek-R1-Q4_K_M3. 安装显卡驱动和cuda4. 显卡 NVIDIA GeForce RTX 4090 二、安装ktransformers1. 安装依赖2. 安装uv工具链3. 下载源码4. 创建python虚拟环境 三、编译ktransforme…

QT:Graphics View的坐标系介绍

在 Qt 的 Graphics View 框架中,存在三种不同的坐标系,分别是 物品坐标系(Item Coordinates)、场景坐标系(Scene Coordinates) 和 视图坐标系(View Coordinates)。这三种坐标系在图形…

医院HIS接入大模型:算力基础设施与训练能力的深度剖析与测算

一、引言 1.1 研究背景与意义 在数字化医疗快速发展的当下,医院信息系统(Hospital Information System,HIS)作为医疗信息化的核心枢纽,承载着患者诊疗信息、医院运营管理等关键数据 ,对提升医疗服务质量、优化医院管理流程起着至关重要的作用。然而,传统 HIS 在面对日…

入门网络安全工程师要学习哪些内容【2025年寒假最新学习计划】

🤟 基于入门网络安全/黑客打造的:👉黑客&网络安全入门&进阶学习资源包 大家都知道网络安全行业很火,这个行业因为国家政策趋势正在大力发展,大有可为!但很多人对网络安全工程师还是不了解,不知道网…

阿里云CDN转https个人测试证书过期更换

网站是http的虚拟主机,微信小程序要求https,所以申请了阿里云CDN和个人测试证书(以前叫免费证书),把http转成https。 但是个人测试证书只有三个月有效期,所以每隔三个月要手动申请更换一次。 在阿里云CDN…

东信营销科技巨额补贴仍由盈转亏:毛利率大幅下滑,现金流告急

《港湾商业观察》施子夫 近期,东信营销科技有限公司(以下简称,东信营销科技)递表港交所,联席保荐机构为海通国际和中银国际。 东信营销科技的国内运营主体为深圳市东信时代信息技术有限公司。尽管期内收入规模有所提…

AOP进阶-04.切入点表达式-@annotation

一.annotation注解 我们在最后一个切入点表达式中要匹配多个无规则的方法,这样的写法有些冗余了。而annotation注解就是来解决这一问题的。 annotation注解使用特定的注解来匹配方法。我们首先自定义一个注解,该注解就相当于一个标签,目标对…

特斯拉 FSD 算法深度剖析:软件层面全解读

一、引言 特斯拉的 FSD(Full Self-Driving)系统作为自动驾驶领域的前沿成果,其软件层面的算法设计至关重要。本文将从软件的角度,深入探讨特斯拉 FSD 所采用的算法,包括感知、规划、控制等多个方面,以期为…

LabVIEW同步数据采集功能

VI通过使用数据采集(DAQ)硬件系统,进行多通道同步采集,实时获取模拟信号数据。它利用外部时钟信号触发数据采集,支持连续采样模式,并将采集到的数据实时显示在波形图上,方便用户进行数据监控和分…

YOLOv12 ——基于卷积神经网络的快速推理速度与注意力机制带来的增强性能结合

概述 实时目标检测对于许多实际应用来说已经变得至关重要,而Ultralytics公司开发的YOLO(You Only Look Once,只看一次)系列一直是最先进的模型系列,在速度和准确性之间提供了稳健的平衡。注意力机制的低效阻碍了它们在…

Ubuntu20.04之VNC的安装使用与常见问题

Ubuntu20.04之VNC的安装与使用 安装图形桌面选择安装gnome桌面选择安装xface桌面 VNC-Server安装配置开机自启 VNC Clientroot用户无法登入问题临时方案永久方案 安装图形桌面 Ubuntu20.04主流的图形桌面有gnome和xface两种,两种桌面的安装方式我都会写&#xff0c…

14.二叉搜索树

二叉搜索树 1.概念 ⼆叉搜索树⼜称⼆叉排序树,它或者是⼀棵空树,或者是具有以下性质的⼆叉树: *若它的左⼦树不为空,则左⼦树上所有结点的值都⼩于等于根结点的值 *若它的右⼦树不为空,则右⼦树上所有结点的值都⼤于等于根结点…

web网络安全---cookie篇

什么是Cookie 由于HTTP是一种无状态的协议,服务器单从网络连接上无从知道客户身份。怎么办呢?就给客户端们颁发一个通行证吧,每人一个,无论谁访问都必须携带自己通行证。这样服务器就能从通行证上确认客户身份了。这就是Cookie的…