当前位置: 首页 > news >正文

深入了解网络基础:从背景到协议

这里写自定义目录标题

    • 1. 什么是协议呢?
    • 2. 什么是网络协议?
    • 5. OSI七层网络模型
    • 6. 网络传输基本流程
      • 1. 数据准备:
      • 2. 数据传输:
      • 3. 数据接收和重新组装:
      • 4. 数据处理与应用:
    • 7. 数据的发送(封装,解封装,网络传输)
      • 数据包装(封装):
      • 数据分用(解封装):
      • 简单来说
      • 什么是报头?
      • 什么是有效载荷?
      • 分离报头和有效载荷
      • 怎么确保在网络能发送到对端主机?
      • 采用不同通信标准的两个局域网内的主机怎么通信?
      • 8. IP地址和MAC地址
      • 什么是子网掩码
      • IP划分

随着科技的迅猛发展,网络已经成为我们生活中不可或缺的一部分。本文将带领我们深入了解网络基础,包括网络的背景、发展历程、协议的概念及其重要性,以及网络传输的基本流程、数据包装和分用。

从独立模式到广域网

  1. 独立模式
    在早期,计算机是独立工作的,彼此之间没有连接。每台计算机独自完成任务,数据传输通常是通过物理介质(如磁带、磁盘)进行的。

例子: 20世纪50年代,计算机像ENIAC一样是庞大的机器,每台计算机独立完成计算任务,没有与其他计算机连接。

  1. 网络互联
    随着计算机技术的进步,人们开始探索将计算机连接在一起,形成网络。这种网络互联的方式促进了资源共享和信息传递。

例子: 20世纪60年代末,ARPANET项目的启动标志着网络互联的开始。该项目将多台计算机连接在一起,为今后互联网的发展奠定了基础。

  1. 局域网(LAN)
    局域网是一组相互连接的计算机,它们在一个相对较小的地理范围内共享资源和信息。这种网络形式使得组织内部的计算机能够高效地交换数据。

例子: 一个办公室内的计算机、打印机和文件服务器通过局域网连接在一起,员工可以共享文件和打印资源。

  1. 广域网(WAN)
    广域网是覆盖较大地理范围的网络,通过公共或专用的通信线路连接不同的局域网。这使得不同地区的计算机可以实现远程通信和资源共享。

例子: 一家跨国公司的总部位于纽约,而分公司位于东京。通过广域网,两地的计算机可以进行实时的数据传输和协作。

总的来说,网络的发展经历了从独立模式到网络互联再到局域网和广域网的演变过程。这些不同阶段的发展推动了信息技术的迅猛发展,使得计算机能够更加高效地协作和通信,为现代社会的信息化奠定了基础。
在这里插入图片描述

1. 什么是协议呢?

在日常生活中,协议指的是一种双方或多方之间达成的规定、约定或协定,以便有序地完成某项任务或达成共同的目标。这种约定通常是为了确保各方能够理解彼此的期望并遵循一定的规则。以下是一个生活中的例子:

在这里插入图片描述

在一个家庭中,成员之间可能会制定一份家庭作息协议,以确保每个成员都能够在共享的空间中和谐相处,同时满足各自的需求。这份协议可以包括以下内容:

  1. 用餐时间: 确定家庭成员共同用餐的时间,以促进家庭交流和团结。
  2. 晚安时间: 约定晚上何时安静,以便那些需要休息的成员能够享有安宁的环境。
  3. 家务分工: 制定家务分工的规则,确保每个成员都有责任,共同维护家庭的整洁和有序。
  4. 电视/娱乐时间: 确定观看电视或进行娱乐活动的时间,以避免因此导致不必要的冲突。
  5. 客人来访: 确定接待客人的规矩,包括通知家庭成员、整理客厅等。

这样的家庭作息协议有助于建立家庭成员之间的相互理解和尊重,同时提供了一个有序的生活环境。在这个例子中,协议的存在有助于家庭成员更好地协同合作,共同维护家庭和谐。

2. 什么是网络协议?

计算机之间的传输媒介是光信号和电信号. 通过 "频率" 和 "强弱" 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式.
在这里插入图片描述

  • 计算机生产厂商有很多;
  • 计算机操作系统, 也有很多;
  • 计算机网络硬件设备, 还是有很多;

如何让这些不同厂商之间生产的计算机能够相互顺畅的通信?就需要有人站出来, 约定一个共同的标准,大家都来遵守, 这就是 网络协议;

网络协议是计算机网络中用于通信的规则和约定的集合。它定义了数据的传输方式、错误检测和纠正的方法,以及网络设备之间如何进行通信。协议是网络通信的基础,确保了设备之间的相互理解和有效的数据传输。
举个栗子

  1. A 和 C 打电话,在语言层面中,A 和 C 都用汉语进行交流,这样双方都能听懂,也就默认规定了语言协议。在通信设备层面,A 和 C都用的电话机,在通信层面看来所用通信协议就是一样的。
  2. 如果变更一下,现在A 和C 在施工现场上,电话机无法进行实时交流,此时我们的硬件就可以变更成为无线电,也就是通信协议由电话机变为了无线电,在上层语言层看来,A 和 C还是可以用汉语交流,底层硬件改变并不影响上层交流方式
  3. 同理,现在A 和C 想要提高英语口语交际能力,打电话用英文交流,上层语言层虽然改变了,但是底层硬件也可以依旧用电话机进行传输信息

在这里插入图片描述

看完上述案例,相信你应该对协议有些许认识(对于同层设备来说,它们使用相同的协议进行通信,因此可以相互理解和协作。

5. OSI七层网络模型

网络协议的存在是为了确保不同厂商、不同类型的设备能够在网络中无缝通信。它们提供了一个标准化的方式,使得网络设备能够正确地解释和处理传输的数据。
详细可以查看笔记(详解OSI七层网络模型)

6. 网络传输基本流程

网络传输的基本流程包括数据的发送、中间设备的路由和数据的接收。数据被分割成小的数据包,通过网络传输到目的地,中间经过多个路由器和交换机。
在这里插入图片描述

这个过程可以分为几个主要阶段:

1. 数据准备:

数据生成: 发送方(比如你的电脑)产生需要发送的数据,可能是文本、图像、视频或其他形式的信息。
封装数据: 数据会被分割成较小的单元,并按照特定的协议进行封装。例如,在TCP/IP协议中,数据被分成数据包,并加上了头部信息(源地址、目标地址、校验和等)。

2. 数据传输:

发送数据: 数据包通过发送方的网络接口被传送到网络中,首先经过本地的路由器或交换机。
路由选择: 网络设备(如路由器)根据目标地址,决定数据包应该经过哪些路径来到达目标地址。这个过程被称为路由选择,它确保数据按照最佳路径传输。
传输过程: 数据包沿着经过的路径在网络中传输,经过多个中间节点,可能经过多个网络设备和服务器,直到到达目标网络。

3. 数据接收和重新组装:

接收数据包: 数据包到达目标网络后,被目标设备(例如你的另一台电脑)的网络接口接收。
解封装数据: 目标设备根据协议规范进行解封装,将数据包还原为原始的数据形式。
数据重组: 如果数据被分割成多个包进行传输,目标设备会按照特定规则重新组装这些包,以还原原始的数据。

4. 数据处理与应用:

数据处理: 目标设备接收到数据后,可能会对其进行处理,比如解码、解压缩或其他必要的操作。
应用数据: 最终,数据被传递到目标应用程序中,用于显示、存储或执行相应的操作。

补充说明:
传输控制协议(TCP)和互联网协议(IP)是在网络传输中起关键作用的协议。TCP负责数据的分段、传输和重组,而IP则负责将数据包进行路由和传递。

物理介质: 数据传输的物理层面可能涉及光纤、电缆、无线信号等不同的介质。

这个流程描述了数据在网络中传输的基本过程。不同的协议和网络设备在这个过程中扮演着不同的角色,确保数据能够安全、可靠地从发送方传输到接收方。

7. 数据的发送(封装,解封装,网络传输)

在网络中,数据被封装成数据包,每个数据包包含了源地址、目标地址、数据内容以及其他控制信息。分用是指接收方根据目标地址将数据包中的信息正确地交付给相应的应用程序或服务。

数据包装(封装):

在每一层拿到数据后都会将要发送的数据进行封装,添加每一层对应的报头,最后由数据链路层进行数据发送到对应主机,再由对方主机根据协议进行解包,最后得到数据

数据生成: 发送方产生需要传输的数据,这可以是文本、图像、音频或其他类型的信息。

封装数据: 数据被分割成较小的单元,通常被称为数据包。每个数据包包含了要传输的一部分数据以及与之相关的控制信息。例如,在TCP/IP协议中,数据包包括数据部分和头部信息,头部信息包含源地址、目标地址、校验和等。

添加协议信息: 数据包在封装过程中可能需要添加特定协议的信息,以确保在网络中的正确传输。协议的选择取决于网络通信的需求,如TCP/IP协议套件中的TCP或UDP协议。

数据分用(解封装):

接收数据包: 数据包通过网络传输到达目标系统,目标系统的网络接口接收这些数据包。

解封装数据包: 接收方的网络协议栈根据协议规范进行解封装,提取出数据包的原始数据和控制信息。

校验和处理: 接收方可能会对数据包进行校验和处理,以确保数据的完整性。这涉及到验证数据包的校验和,以确定数据在传输过程中是否发生了错误。

数据重组: 如果数据被分割成多个数据包进行传输,接收方会按照特定的规则重新组装这些数据包,以还原原始的数据。

补充说明:

  • 传输控制协议(TCP):在TCP通信中,数据包装和分用的过程由TCP协议负责。TCP提供面向连接的、可靠的数据传输,确保数据的有序传输和错误处理。

  • 用户数据报协议(UDP): 与TCP不同,UDP是一种无连接的协议,不保证数据传输的可靠性,适用于对实时性要求较高的应用。

  • 网络协议栈: 数据包装和分用是网络协议栈中的一部分,涉及多个协议层的交互,包括物理层、数据链路层、网络层、传输层等。

简单来说

数据封装实际就是不断给数据加上各种对应的报头,这些报头里面填充的就是对应的各种协议细节。
数据解包实际就是不断从数据中提取对应的报头,并对提取出来的报头进行数据分析。

什么是报头?

报头(Header):
报头是数据包的开头部分,包含了一系列的控制信息和元数据,以便在网络中正确地路由和处理数据。报头提供了关于数据包的关键信息,比如源地址、目标地址、协议类型、数据长度等。不同的通信协议有不同的报头格式,但通常报头包含的信息有:

  • 源地址和目标地址: 标识了数据包的发送方和接收方的网络地址。

  • 协议类型: 指明了数据包使用的通信协议,如TCP、UDP、IP等。

  • 校验和: 用于验证数据包在传输过程中是否发生了错误。

  • 时间戳: 记录了数据包的创建或发送时间。

  • 序列号和确认号(在TCP中): 用于实现可靠的数据传输,确保数据包的有序到达。

什么是有效载荷?

有效载荷(Payload):
有效载荷是数据包中携带的实际数据部分,它是发送方要传输的信息的内容。在网络通信中,有效载荷包含了用户的数据,例如文本、图像、音频等。在文件格式中,有效载荷是文件的实际内容。

分离报头和有效载荷

分离报头和有效载荷:(简单来说就是明确报头和有效载荷的界限
将报头和有效载荷分离的过程通常是在数据包的解封装阶段完成的。当数据包到达目的地时,接收方的网络协议栈会对数据包进行解封装,这涉及到以下步骤:

  1. 报头解析: 接收方根据协议规范解析报头,提取其中的控制信息,比如源地址、目标地址等。

  2. 有效载荷提取: 接收方根据报头中的信息确定有效载荷的位置和大小,然后提取出有效载荷部分,即实际的数据内容。

  3. 数据处理: 接收方根据协议和应用程序的要求对有效载荷进行处理,这可能包括数据的重组、校验和验证、解码等操作。

怎么确保在网络能发送到对端主机?

在这里插入图片描述

采用不同通信标准的两个局域网内的主机怎么通信?

当两个局域网采用不同的通信标准时,比如一个局域网使用以太网(Ethernet),而另一个采用令牌环网(Token Ring),它们的通信可以通过网关或路由器来实现。
在这里插入图片描述

  1. 以太网和令牌环网的通信: 以太网(Ethernet): 以太网是一种常见的局域网技术,它使用CSMA/CD(Carrier Sense Multiple Access with Collision Detection)来控制数据包在共享介质上的传输。

  2. 令牌环网(Token Ring):
    令牌环网是一种局域网拓扑,它使用令牌传递来控制数据包的传输。在这个环网中,只有持有令牌的设备才能发送数据包。

实现通信的方式:

  1. 使用网关或路由器:
  • 对于以太网和令牌环网之间的通信,可以使用网关或路由器来连接这两种网络。
  • 网关是连接两个不同网络的设备,它能够理解和转换不同网络标准之间的数据格式和通信规则。
  • 当一台位于以太网上的主机想要与令牌环网中的主机通信时,它会发送数据到网关。网关会接收并解释来自以太网的数据,然后将它转换成适合在令牌环网上传输的格式,并将数据发送到令牌环网。
  • 类似地,网关也会处理从令牌环网到以太网的数据转换和传输。
    在这里插入图片描述
  1. 协议转换器:
  • 有时也会使用专门的设备,如协议转换器,来进行不同通信标准之间的转换。这些设备专注于将一个通信标准的数据转换成另一个标准的数据。
  1. 中继设备:
  • 在某些情况下,可以使用中继设备或桥接器来连接不同的网络。这些设备可以帮助在不同网络之间传输数据,但通常并不执行协议转换。

总结:
在不同通信标准的两个局域网之间进行通信需要特殊设备或者技术来实现协议转换和数据格式的调整。网关、协议转换器或者其他中继设备可以充当桥梁,使得不同标准的网络能够进行交流和数据传输。

8. IP地址和MAC地址

IP地址(Internet Protocol Address): 它是网络上的设备(如计算机、路由器等)在网络中的标识符。IP地址分为IPv4和IPv6两种版本,其中IPv4通常以点分十进制表示,而IPv6以冒号分隔的八组十六进制数表示。

linux下查看ip

在这里插入图片描述

MAC地址(Media Access Control Address): 也称为物理地址,是网络设备网卡的硬件地址。它是全球唯一的,并通常以六组十六进制数表示,中间用冒号或短划线分隔。

什么是子网掩码

在这里插入图片描述

IP划分

在这里插入图片描述

相关文章:

深入了解网络基础:从背景到协议

这里写自定义目录标题 1. 什么是协议呢?2. 什么是网络协议?5. OSI七层网络模型6. 网络传输基本流程1. 数据准备:2. 数据传输:3. 数据接收和重新组装:4. 数据处理与应用: 7. 数据的发送(封装&…...

针对这两个趋势,3.0全新新零售商业模式可以采取以下策略:

国内市场确实存在“消费升级”和“消费降级”两个趋势,这是由于不同消费者群体的需求和购买力存在差异。消费升级主要发生在高端市场,消费者愿意为高品质、高价值、高价格的商品和服务付出更多。而消费降级则主要发生在中低端市场,消费者更加…...

鸿蒙HarmonyOS开发用什么语言

1.网上流行一句有中国底蕴的话:鸿蒙系统方舟框架盘古大模型。都方舟框架了肯定主推的是ArkUI框架。其实还能使用C、Java和Js开发。 2.从API8开始,Java语言已经从鸿蒙开发剔除了,而官方推荐的是ArkTs.下图是ArkTS与TS、JS的关系。 ArkTs 是TS的…...

气象数据预测分析与可视化:天气趋势预测揭秘

气象数据预测分析与可视化:天气趋势预测揭秘 引言数据获取数据分析可视化展示Flask框架实现创新点:空气质量预测结论 引言 天气对我们日常生活和工作有着重要的影响,因此天气预测与分析变得愈发重要。本文将介绍如何通过爬取2345天气网的数据…...

install cuda cudnn tersorRT

1, dark view 2,470-server cant install 11.4 3,cuda.run and tensorRT.dpkg cant # 安装 $ ubuntu-drivers devices$ sudo apt-get install nvidia-driver-470-server # 推荐是server,都可以。#delelt sudo apt --purge remove nvidia-* CUDA Toolkit Archiv…...

Vue 3 + Vite 4 移动端低版本白屏处理

vue3打包后在低版本浏览器或webview中出现白屏,原因就是因为语法兼容问题。根据vite官方文档描述,build.target 默认支持 Chrome >87、Firefox >78、Safari >14、Edge >88 传送,所以需要我们手动兼容低版本。 方法: …...

Python爬虫-解决使用requests,Pyppeteer,Selenium遇到网站显示“您的连接不是私密连接”的问题|疑难杂症解决(2)

前言 本文是该专栏的第13篇,后面会持续分享python爬虫案例干货,记得关注。 相信很多同学在处理爬虫项目的时候,会遇到一些网站出现如下图所示的情况: 就是当你不论是使用requests进行协议请求,还是使用自动化框架pyppeteer或者selenium都会出现上图中的情况。这相信会或多…...

机场信息集成系统系列介绍(5):机场运行资源管理系统

目录 一、简介 二、主要功能 1、 航班资源管理模块 2、甘特图资源模块 3、规划管理模块 4、资源基础数据定义及配置管理模块 5、系统功能设置模块 6、 审计管理模块 一、简介 机场运行资源管理系统(ORMS) 是一种专门用于管理和优化机场运行资源的系统。它能够实现机场航…...

JavaEE:线程池精讲

目录 一.什么是线程池 二.线程池的实现原理 🎈为什么要有工厂模式? 三.线程池的构造方法解读 🎈线程池的拒绝策略 四.自己实现一个线程池 一.什么是线程池 简单来说,线程池就好比一块鱼塘,鱼塘中的每条鱼就是一个线程…...

spring-cloud-starter-gateway-mvc的网关实现

一 概括 最近,我也一直在使用SpringCloudGateway开发我们自己的网关产品。根据我对官网文档:https://docs.spring.io/spring-cloud-gateway/reference/spring-cloud-gateway-server-mvc.html 的理解,内容如下: SpringCloudGatew…...

《PySpark大数据分析实战》-11.Spark on YARN模式安装Hadoop

📋 博主简介 💖 作者简介:大家好,我是wux_labs。😜 热衷于各种主流技术,热爱数据科学、机器学习、云计算、人工智能。 通过了TiDB数据库专员(PCTA)、TiDB数据库专家(PCTP…...

多架构容器镜像构建实战

最近在一个国产化项目中遇到了这样一个场景,在同一个 Kubernetes 集群中的节点是混合架构的,也就是说,其中某些节点的 CPU 架构是 x86 的,而另一些节点是 ARM 的。为了让我们的镜像在这样的环境下运行,一种最简单的做法…...

通过层进行高效学习:探索深度神经网络中的层次稀疏表示

一、介绍 深度学习中的层次稀疏表示是人工智能领域日益重要的研究领域。本文将探讨分层稀疏表示的概念、它们在深度学习中的意义、应用、挑战和未来方向。 最大限度地提高人工智能的效率和性能:深度学习系统中分层稀疏表示的力量。 二、理解层次稀疏表示 分层稀疏表…...

自然语言处理阅读第二弹

HuggingFace 镜像网站模型库 HuggingFace中bert实现 下游任务介绍重要源码解读 NLP中的自回归模型和自编码模型 自回归:根据上文内容预测下一个可能的单词,或者根据下文预测上一个可能的单词。只能利用上文或者下文的信息,不能同时利用上…...

利用canvas封装录像时间轴拖动(uniapp),封装上传uniapp插件市场

gitee项目地址,项目是一个空项目,其中包含了封装的插件,自己阅读,由于利用了canvas所以在使用中暂不支持.nvue,待优化; 项目也是借鉴了github上的一个项目,timeline-canvas,​​​​​​​ ​​​​​​​...

PDF转为图片

PDF转为图片 背景pdf展示目标效果 发展过程最终解决方案:python PDF转图片pdf2image注意:poppler 安装 背景 最近接了一项目,主要的需求就是本地的文联单位,需要做一个电子刊物阅览的网站,将民族的刊物发布到网站上供…...

隐私计算介绍

这里只对隐私计算做一些概念性的浅显介绍,作为入门了解即可 目录 隐私计算概述隐私计算概念隐私计算背景国外各个国家和地区纷纷出台了围绕数据使用和保护的公共政策国内近年来也出台了数据安全、隐私和使用相关的政策法规 隐私计算技术发展 隐私计算技术安全多方计…...

HTML有哪些列表以及具体的使用!!!

文章目录 一、HTML列表二、列表的应用1、无序列表2、有序列表3、自定义列表 三、总结 一、HTML列表 html的列表有三种&#xff0c;一种是无序列表&#xff0c;一种是有序列表&#xff0c;还有一种为自定义列表。 二、列表的应用 1、无序列表 <ul> <li>无序列表…...

DriveWorks Solo捕获参数(二)

捕获参数-帧 顶门框 现在让我们捕获框架。它由2部分组成&#xff1b;两者都有一个需要捕捉的维度。 1.通过单击“捕获资源管理器”中的标题来激活“捕获的模型”部分。 2.展开框架组件。 3.双击任务窗格树中的模型顶门侧柱。 这将在SOLIDWORKS中打开模型顶门门框&#xff0c;并…...

基于开源的JAVA mongodb jdbc 驱动 使用教程

基于开源的JAVA mongodb jdbc 驱动 使用教程介绍 介绍 本文介绍一款开源的基于JAVA的 Mongodb JDBC 驱动使用教程 开源地址 https://gitee.com/bgong/jdbc-mongodb-driver功能价值 与mybaits融合&#xff1a;复用mybatis的功能特性&#xff0c;如:缓存,if动态判断标签等特…...

[RK-Linux] RK3399使用RK开源SPL,修改U-Boot为FIT打包方式,裁剪trust分区

文章目录 一、启动方式二、FIT打包三、RK3568相关配置参考四、RK3399支持与调试一、启动方式 RK3399平台根据前级Loader代码是否开源,目前有两套启动方式: // 前级loader闭源 BOOTROM => ddr bin => Miniloader => TRUST => U-BOOT => KERNEL // 前级loader…...

【网络安全】-Linux操作系统—VMWare软件

文章目录 VMWare软件的安装选择VMWare版本下载VMWare安装过程 VMWare的常用操作创建新的虚拟机配置虚拟机启动和关闭虚拟机安装VMWare Tools VMWare的克隆和快照克隆&#xff08;Clone&#xff09;快照&#xff08;Snapshot&#xff09; 总结 VMWare是一种流行的虚拟化软件&…...

关于chatgpt一点肤浅认识

001 词向量 用数字向量表示单词。它是计算机更好地理解单词 1、预训练 – 就是先训练一个模型&#xff0c;用于以后特定任务的微调&#xff0c;比如将 BERT这个模型用于特定的NLP任务&#xff0c;比如情感分析 2、one-hot: 用只有一个元素是1&#xff0c;其他是0的向量表示物体…...

Redis结合SpringBoot 基本使用

1.1 简介 1.1.1 概述 Spring Data 中有一个成员 Spring Data Redis&#xff0c;他提供了 RedisTemplate 可以在 Spring 应用中更简便的访问 Redis 以及异常处理及序列化&#xff0c;支持发布订阅等操作。 1.2 RedisTemplate 常见 API   RedisTemplate 针对 jedis 客户端中大…...

JAVA主流日志框架梳理学习及使用

前言&#xff1a;目前市面上有挺多JAVA的日志框架&#xff0c;比如JUL(JDK自带的日志框架),Log4j,Logback,Log4j2等&#xff0c;有人可能有疑问说还有slf4j&#xff0c;不过slf4j不是一种日志框架的具体实现&#xff0c;而是一种日志门面&#xff08;日志门面可以理解为是一种统…...

java多个设计模式解决大量if-else堆积

当面对大量的 if-else 语句时&#xff0c;可以考虑使用以下几种常见的设计模式来减少代码的复杂性和维护成本&#xff1a; 策略模式&#xff08;Strategy Pattern&#xff09;&#xff1a;将各个分支的逻辑封装成不同的策略类&#xff0c;然后通过一个上下文类来根据条件选择合…...

js DOM的一些小操作 获取节点集合Node( getElementsByClassName等)

1. getElementsByClassName(names) 返回文档中所有含有指定类名的节点 document.getElementsByClassName(a) 返回所有类名为a的节点 2.getElementsByName(name) 返回文档中所有指定name的节点。 标签可以有name属性。 3. querySelectorAll(selectors) 返回文档中所有匹配…...

Arcgis导出为tiff

原有一幅影像&#xff0c;在进行一些操作之后&#xff0c;需要导出为tiff 比如我对他进行一个重采样&#xff0c;48m分辨率变为96m 在重采样后的数据图层上右键&#xff0c;导出数据 为什么有时会导出为.gdb格式的呢&#xff1f; 可能是位置处在一个文件地理数据库.gdb下...

nginx中的root and alias命令的区别

Ubuntu关于Nginx的命令&#xff1a; 1、安装Nginx&#xff1a; apt-get install nginx2、查看Nginx运行状态&#xff1a; systemctl status nginx3、启动Nginx&#xff1a; systemctl start nginx4、停止Nginx&#xff1a; systemctl stop nginx5、重启Nginx&#xff1a; …...

python提取图片型pdf中的文字(提取pdf扫描件文字)

前言 文字型pdf提取&#xff0c;python的库一大堆&#xff0c;但是图片型pdf和pdf扫描件提取&#xff0c;还是有些难度的&#xff0c;我们需要用到OCR&#xff08;光学字符识别&#xff09;功能。 一、准备 1、安装OCR&#xff08;光学字符识别&#xff09;支持库 首先要安…...