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

初识计算机网络

从此篇我将开始网络新篇章!

1. 网络发展史

最初的计算机之间相互独立存在,每个计算机只能持有自己的数据,数据无法共享。此时的计算机为独立模式
随着时代的发展,越来越需要计算机之间互相通信,共享软件和数据,即以多个计算机协同⼯作来完
成业务,就有了网络互连
网络互联即将多台计算机连接在⼀起,完成数据共享。
数据共享本质是网络数据传输,即计算机之间通过⽹络来传输数据,也称为网络通信。
根据网络互连的规模不同,可以划分为局域网广域网

2. 广域网VS局域网

2.1局域网LAN

局域网,即LocalAreaNetwork,简称LAN。
Local 即标识了局域网是本地,局部组建的⼀种私有网络。
局域网内的主机之间能方便的进行网络通信,又称为内网;局域网和局域网之间在没有连接的情况下,是无法通信的。

局域网组建网络的方式有很多种:

1. 基于网线直连

在这里插入图片描述

2. 基于集线器组建

在这里插入图片描述
集线器只能单向转发数据,现在不使用了

3. 基于交换机组建

在这里插入图片描述
可以实现对所有计算机设置的数据转发
在内网中实现组网,主要用在公司内部

4. 基于交换机和路由器组建

在这里插入图片描述

2.2 广域网WAN

广域网,即WideAreaNetwork,简称WAN。
通过路由器,将多个局域网连接起来,在物理上组成很大范围的网络,就形成了广域网。广域网内部
的局域网都属于其子网。

在这里插入图片描述

其局域网和广域网是一个相对概念,并没有明确的区分

3. 网络通讯基础

3.1 IP地址

概念IP地址主要用于标识网络主机、其他网络设备(如路由器)的网络地址。简单说,IP地址用于定位主机的网络地址。
就像我们发送快递⼀样,需要知道对方的收货地址,快递员才能将包裹送到目的地。

格式: IP地址是⼀个32位的二进制数,通常被分割为4个“8位⼆进制数”(也就是4个字节),如:01100100.00000100.00000101.00000110。通常用“点分十进制”的方式来表示,即a.b.c.d的形式(a,b,c,d都是0~255之间的十进制整数)。如:100.4.5.6。


上述IP地址是用四个字节表示的,最多42亿左右的设备,那么不够用怎么办?

上述的IP地址采用的点分十进制的表示方法是Ipv4的表示方法,现如今有了Ipv6表示方法,完全足够使用

在这里插入图片描述
在cmd当中使用ipconfig指令可以查看当前设备的IP地址,以我电脑为例:

在这里插入图片描述


3.2 端口号

概念: 在网络通信中,IP地址用于标识主机网络地址,端口号可以标识主机中发送数据、接收数据的进程。简单说:端口号用于定位主机中的进程。
类似发送快递时,不光需要指定收货地址(IP地址),还需要指定收货人(端⼝号)。

格式:
端口号是0~65535范围的数字,在网络通信中,进程可以通过绑定⼀个端口号,来发送及接收网络数据。


端口号是否是可变的呢?
  • 如果是服务提供方就需要一个确定的端口号,MYSQL服务端的端口号默认3306
  • 如果是客户端的话系统会随机分配一个

那么程序员是否可以随机指定端口号呢?

  • 其中1~ 1024 知名端口号,比较有名的程序已经占用了的端口号,比如:WEB程序用的80,FTP用的21
  • 1205~ 65535 这个范围内可以随便指定
  • 原则就是一台主机上的端口号在不同网络程序之间不能冲突

有了IP地址和端口号,可以定位到网络中唯⼀的⼀个进程,但还存在⼀个问题,⽹络通信是基于⼆进制0/1数据来传输,那么如何告诉对⽅发送的数据是什么样的呢?
网络通信传输的数据类型可能有多种:图片,视频,文本等。同⼀个类型的数据,格式可能也不同,
如发送⼀个文本字符串“你好!”:如何标识发送的数据是文本类型,及文本的编码格式呢?
基于网络数据传输,需要使用协议来规定双方的数据格式。


3.3 认识协议

概念: 协议,网络协议的简称,网络协议是网络通信(即网络数据传输)经过的所有网络设备都必须共同遵从的⼀组约定、规则。如:怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。
协议(protocol)最终体现为在网络上传输的数据包的格式。

计算机之间的传输媒介是光信号和电信号。通过"频率"和"强弱"来表⽰0和1这样的信息。要想传递
各种不同的信息,就需要约定好双⽅的数据格式。

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

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

3.4 五元组

在TCP/IP协议中,⽤五元组来标识⼀个网络通信:

  1. 源IP: 标识源主机,等同于发件人地址
  2. 源端口号: 标识源主机中该次通信发送数据的进程,等同于发件人名称
  3. 目的IP: 标识目的主机,等同于收件人地址
  4. 目的端⼝号: 标识目的主机中该次通信接收数据的进程,等同于收件人名称
  5. 协议号: 标识发送进程和接收进程双方约定的数据格式,等同于运送的物品或其他相关约定
    在这里插入图片描述
    在这里插入图片描述

3.5 协议分层

对于网络协议来说,往往分成几个层次进行定义。
为什么要协议分层?
目的是为了让不同的层专注自身的数据处理方式,只需要为上层去提供API,并
为下层准备数据(根据下层协议要求)

3.5.1 OSI七层模型

OSI:Open System Interconnection,开放系统互连
在这里插入图片描述

OSI 七层模型既复杂又不实用:所以OSI七层模型没有落地、实现。
实际组建网络时,只是以OSI七层模型设计中的部分分层,也即是以下TCP/IP五层(或四层)模型来实现。

3.5.2 TCP/IP五层(或四层)模型

在这里插入图片描述

  1. 应用层: 和用户打交道,接收与展示用户的数据,比如收发快递的过程中,只关注物品本身
  2. 传输层: 完成端到端的传输的准备,确定收送主机的地址和端口号,对比快递来说确定收件人和发件人的地址和电话
  3. 网络层: 规划出端到端之间的网络路径,路径中可能会包含中间经过的其他网络设备,比如快递中转站
  4. 数据链路层: 完成点到点之间的传输,每个网络设备之间的传输
  5. 物理层: 把真实的BIT数据流,通过转换成光电信号在传输介质中传输
    网线:电信号 光纤:光信号

注意四层模型即不包括物理层

3.6 封装和分用

  • 不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)

  • 应用层数据通过协议栈发到网络上时,每层协议都要加上⼀个数据首部(header),称为封装 (Encapsulation)。

  • 首部信息中包含了⼀些类似于首部有多长,载荷(payload)有多长,上层协议是什么等信息。

  • 数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的"上层协议字段"将数据交给对应的上层协议处理。

下图为数封装和分用的过程
在这里插入图片描述

发送方流程(封装):

  1. 应用层按照应用层协议组装好我们的数据
  2. 传输层确定源端口号和目的端口号
  3. 网络层确定源IP地址和目的IP地址
  4. 数据链路层确定源MAC地址和目的MAC地址放在MAC头中(帧头),通过CRC算法计算校验和放在MAC尾中(帧尾),加入帧头与帧尾之后,把数据以二进制的形式发送给物理层
  5. 物理层把具体的数据(报文)转换成光电信号,通过传输介质进行传输

接收方流程(分用):

  1. 物理层接收到光电信号之后,根据以太网协议把信号转换成二进制BIT流,以二进制的形式交给上一层(数据链路层)
  2. 数据链路层解析出帧头、载荷、帧尾确认数据正确后,去掉帧头与帧尾把本层的载荷交给上一层(网络层)
  3. 网络层根据IP协议解析报文件,取出载荷交给上一层(传输层)
  4. 传输层根据TCP协议解析报文件,取出载荷交给上一层(应用层)
  5. 应用层按应用程序协议解析数据

此时有一个疑问了? 计算机是如何知道对方的IP地址的呢? 这是因为我们在使用软件时,会连接到该软件的服务器,当我们登入成功使用时,该服务器就会把我们的IP地址和端口号存放在当中

相关文章:

初识计算机网络

从此篇我将开始网络新篇章! 1. 网络发展史 最初的计算机之间相互独立存在,每个计算机只能持有自己的数据,数据无法共享。此时的计算机为独立模式 随着时代的发展,越来越需要计算机之间互相通信,共享软件和数据&#x…...

kamailio常见问题解答

常见问题解答 本页面接受贡献,你必须通过注册表单创建一个用户账户: https://www.kamailio.org/wiki/start?doregister 如果你有一个适合收录进常见问题解答的问题,并且你不知道答案,那就添加这个问题,并将答案设置…...

Flask框架入门完全指南

一、初识Flask:轻量级框架的魅力 1.1 Flask框架定位 Flask作为Python最受欢迎的轻量级Web框架,以"微核心可扩展"的设计哲学著称。其核心代码仅约2000行,却支持通过扩展实现完整Web开发功能。这种设计使得开发者可以: …...

用deepseek学大模型05逻辑回归

deepseek.com:逻辑回归的目标函数,损失函数,梯度下降 标量和矩阵形式的数学推导,pytorch真实能跑的代码案例以及模型,数据,预测结果的可视化展示, 模型应用场景和优缺点,及如何改进解决及改进方法数据推导。…...

为什么要选择3D机器视觉检测

选择3D机器视觉检测的原因主要包括以下几点: 高精度测量 复杂几何形状:能够精确测量复杂的三维几何形状。 微小细节:可捕捉微小细节,适用于高精度要求的行业。全面数据获取 深度信息:提供深度信息,弥补2D视…...

CentOS上安装WordPress

在CentOS上安装WordPress是一个相对直接的过程,可以通过多种方法完成,包括使用LAMP(Linux, Apache, MySQL, PHP)栈或使用更现代的LEMP(Linux, Nginx, MySQL, PHP)栈。 我选择的是(Linux, Nginx…...

webshell通信流量分析

环境安装 Apatche2 php sudo apt install apache2 -y sudo apt install php libapache2-mod-php php-mysql -y echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php sudo ufw allow Apache Full 如果成功访问info.php&#xff0c;则环境安…...

高效高并发调度架构

以下是从架构层面为你提供的适合多核CPU、多GPU环境下API客户端、服务端高级调度&#xff0c;以实现高效并发大规模与用户交互的技术栈&#xff1a; 通信协议 gRPC&#xff1a;基于HTTP/2协议&#xff0c;具有高性能、低延迟的特点&#xff0c;支持二进制序列化&#xff08;通…...

MYSQL下载安装及使用

MYSQL官网下载地址&#xff1a;https://downloads.mysql.com/archives/community/ 也可以直接在服务器执行指令下载&#xff0c;但是下载速度比较慢。还是自己下载好拷贝过来比较快。 wget https://dev.mysql.com/get/Downloads/mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz 1…...

Python elasticsearch客户端连接常见问题整理

python 访问 elasticsearch 在python语言中&#xff0c;我们一般使用 pip install elasticsearch 软件包&#xff0c;来访问es服务器。 正确用法 本地安装elasticsearch时&#xff0c;应指定与服务端相同的大版本号&#xff1a; pip install elasticsearch7.17.0然后就可以…...

相得益彰,Mendix AI connector 秒连DeepSeek ,实现研发制造域场景

在当今快速发展的科技领域&#xff0c;低代码一体化平台已成为企业数字化转型的关键工具&#xff0c;同时&#xff0c;大型语言模型&#xff08;LLM&#xff09;如 DeepSeek 在自动生成代码和提供智能建议方面表现出色。 Mendix 于近期发布的 GenAI 万能连接器&#xff0c;目前…...

Python PyCharm DeepSeek接入

Python PyCharm DeepSeek接入 创建API key 首先进入DeepSeek官网&#xff0c;https://www.deepseek.com/ 点击左侧“API Keys”&#xff0c;创建API key&#xff0c;输出名称为“AI” 点击“创建"&#xff0c;将API key保存&#xff0c;复制在其它地方。 在PyCharm中下…...

pytest测试专题 - 2.1 一种推荐的测试目录结构

<< 返回目录 1 pytest测试专题 - 2.1 一种推荐的测试目录结构 2 pytest 项目目录结构及文件功能 以下是典型 pytest 项目中常见的文件和目录结构及其功能的概述&#xff1a; 2.1 文件/目录结构 文件/目录功能描述test_ 文件* 主测试文件&#xff0c;命名通常以 test_…...

Dify本地安装

目录 方式一docker安装&#xff1a; 方式二源码安装&#xff1a; Dify本地安装可以用docker方式&#xff0c;和源码编译方式。 先到云厂商平台申请一台Centos系统云主机&#xff0c;网络选择海外&#xff0c;需要公网IP&#xff0c;再按一下流程操作&#xff1a; 方式一doc…...

MySQL、MariaDB 和 TDSQL 的区别

MySQL、MariaDB 和 TDSQL 是三种不同的数据库管理系统&#xff0c;它们在设计理念、功能、性能和使用场景上有一些显著的区别。 以下是对这三者的详细比较和介绍。 1. MySQL 概述 类型&#xff1a;关系型数据库管理系统&#xff08;RDBMS&#xff09;。开发者&#xff1a;最…...

Java 设计模式之桥接模式

文章目录 Java 设计模式之桥接模式概述UML代码实现 Java 设计模式之桥接模式 概述 桥接模式(Bridge)&#xff1a;将抽象部分与它的实现部分分离&#xff0c;使它们都可以独立地变化。通过桥接模式&#xff0c;可以避免类爆炸问题&#xff0c;并提高系统的可扩展性。 UML 核心…...

【Linux】网络基础

目录 一、协议分层 &#xff08;一&#xff09;计算机网络 &#xff08;二&#xff09;协议分层 &#xff08;三&#xff09;OSI模型 &#xff08;四&#xff09;TCP/IP协议 二、网络传输过程 三、IP地址和MAC地址 &#xff08;一&#xff09;IP地址 &#xff08;二&a…...

[C++]多态详解

目录 一、多态的概念 二、静态的多态 三、动态的多态 3.1多态的定义 3.2虚函数 四、虚函数的重写&#xff08;覆盖&#xff09; 4.1虚函数 4.2三同 4.3两种特殊情况 &#xff08;1&#xff09;协变 &#xff08;2&#xff09;析构函数的重写 五、C11中的final和over…...

Python常见面试题的详解7

1. 内置的数据结构有哪几种 Python 中有多种内置的数据结构&#xff0c;主要分为以下几种&#xff1a; 1.1 数值类型 整数&#xff08;int&#xff09;&#xff1a;用于表示整数&#xff0c;没有大小限制。例如&#xff1a;1, -5, 100。浮点数&#xff08;float&#xff09;…...

C++ ——构造函数

1、作用&#xff1a;创建对象时&#xff0c;给对象的属性进行初始化 2、特点 &#xff08;1&#xff09;构造函数与类同名 &#xff08;2&#xff09;如果没有显式给出构造函数&#xff0c;编译器会给出默认的构造函数&#xff08;参数为空&#xff0c;并且函数体也为空&#…...

PostgreSQL如何关闭自动commit

PostgreSQL如何关闭自动commit 在 PostgreSQL 中&#xff0c;默认情况下&#xff0c;每个 SQL 语句都会自动提交&#xff08;即 AUTOCOMMIT 是开启的&#xff09;。如果希望关闭自动提交&#xff0c;以便手动控制事务的提交和回滚&#xff0c;可以通过以下方法实现。 1 使用 …...

HCIA项目实践--静态路由的总结和简单配置

七、静态路由 7.1 路由器获取未知网段的路由信息&#xff1a; &#xff08;1&#xff09;静态路由&#xff1a;网络管理员手工配置的路由条目&#xff0c;它不依赖网络拓扑的变化进行自动更新&#xff0c;而是根据管理员预先设定的路径来转发数据包。其优点是配置简单、占用系…...

B站视频同步思维导图(全)

前言 前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家&#xff1a;https://www.captainbed.cn/z 文章目录 前言分段视频一张思维导图版本手写版本联系作者 分段视频 Java基础 并发编程 MySQL redis…...

C++游戏开发流程图

C游戏开发流程图如下&#xff1a; #mermaid-svg-by3hx6H65qEwr5mV {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-by3hx6H65qEwr5mV .error-icon{fill:#552222;}#mermaid-svg-by3hx6H65qEwr5mV .error-text{fill:#5…...

回顾Golang的Channel与Select第二篇

深入掌握Go Channel与Select&#xff1a;从原理到生产级实践 一、Channel基础&#xff1a;不只是数据管道 1.1 通道的完整生命周期&#xff08;可运行示例&#xff09; package mainimport ("fmt""time" )func main() {// 创建缓冲通道ch : make(chan i…...

将OpenWrt部署在x86服务器上

正文共&#xff1a;1234 字 40 图&#xff0c;预估阅读时间&#xff1a;2 分钟 如果你问ChatGPT有哪些开源的SD-WAN方案&#xff0c;他会这样答复你&#xff1a; 我们看到&#xff0c;OpenWrt也属于比较知名的开源SD-WAN解决方案。当然&#xff0c;在很久之前&#xff0c;我就发…...

Spring Boot 常用依赖详解:如何选择和使用常用依赖

在Spring Boot项目中&#xff0c;依赖&#xff08;Dependencies&#xff09;是项目的核心组成部分。每个依赖都提供了一些特定的功能或工具&#xff0c;帮助我们快速开发应用程序。本文将详细介绍Spring Boot中常用的依赖及其作用&#xff0c;并指导你如何根据项目需求选择合适…...

day51 第十一章:图论part02

99. 岛屿数量 深搜 每一块的上下左右都遍历过了之后&#xff0c;这块陆地就遍历完了。是深搜&#xff0c;不是广搜 深搜&#xff1a;递归 def dfs(): if .....: 终止条件 dfs(子节点) directions [[0,1],[1,0],[0,-1],[-1,0]]def dfs(grid, visited, x, y):if grid[x][y]…...

介绍一下 Octave

已思考完成 收起 好的&#xff0c;我现在要回答用户关于介绍Octave的问题。首先&#xff0c;我需要整理提供的参考内容&#xff0c;看看有哪些关键点需要覆盖。 用户给的参考内容很多&#xff0c;包括知乎文章和网页资料&#xff0c;涵盖了Octave的历史、功能、语法、与MATLAB的…...

垃圾回收器

一、GC分类与性能指标 1.垃圾回收器概述: 垃圾收集器没有在规范中进行过多的规定&#xff0c;可以由不同的厂商、不同版本的JVM来实现。 由于JDK的版本处于高速迭代过程中&#xff0c;因此Java发展至今已经衍生了众多的GC版本。 从不同角度分析垃圾收集器&#xff0c;可以将…...

前端为什么要使用new Promise包裹一个函数

在前端开发中&#xff0c;使用 new Promise 包裹一个函数主要是为了将原本不支持 Promise 规范的操作转化为支持 Promise 规范的操作&#xff0c;从而可以更好地处理异步操作&#xff0c;提升代码的可读性和可维护性。下面详细介绍这么做的常见原因和应用场景&#xff1a; 1. …...

【设计模式】【行为型模式】访问者模式(Visitor)

&#x1f44b;hi&#xff0c;我不是一名外包公司的员工&#xff0c;也不会偷吃茶水间的零食&#xff0c;我的梦想是能写高端CRUD &#x1f525; 2025本人正在沉淀中… 博客更新速度 &#x1f44d; 欢迎点赞、收藏、关注&#xff0c;跟上我的更新节奏 &#x1f3b5; 当你的天空突…...

深入理解 MQTT 协议:物联网通信的核心

目录 一、什么是 MQTT&#xff1f; 二、MQTT 的核心特点 2.1 轻量级 2.2 发布/订阅模式 2.3 可靠传输 2.4 安全性 三、MQTT 协议架构 3.1 核心组件 3.2 通信流程 四、MQTT 协议详解 4.1 消息格式 4.2 消息类型 4.3 QoS 级别 五、MQTT 的应用场景 六、MQTT 的实现 6.1 常用 Bro…...

25/2/16 <算法笔记> MiDas原理

MiDaS&#xff08;Monocular Depth Sensing&#xff09;是一种基于单目深度估计的技术&#xff0c;它通过深度学习方法使用单张RGB图像&#xff08;普通2D图像&#xff09;来估算场景的深度图&#xff08;Depth Map&#xff09;。相比于传统的依赖专用深度传感器&#xff08;如…...

Ubuntu 下 nginx-1.24.0 源码分析 - ngx_ssl_init 函数

#if (NGX_OPENSSL)ngx_ssl_init(log); #endif objs/ngx_auto_config.h 中 #ifndef NGX_OPENSSL #define NGX_OPENSSL 1 #endif 所以这个条件编译成立 NGX_OPENSSL 是一个宏定义&#xff0c;用于控制与 OpenSSL 相关的功能是否被启用 若用户通过./configure参数&#xff08;如-…...

时间盲注Boolen盲注之获取表、列、具体数据的函数

时间盲注 时间盲注&#xff08;Time-Based Blind SQL Injection&#xff09;是一种利用数据库响应时间的差异来推断数据的SQL注入技术。它的核心原理是通过构造特定的SQL查询&#xff0c;使得数据库在执行查询时产生时间延迟&#xff0c;从而根据延迟的有无来推断数据。 时间…...

人工智能在文化遗产保护中的创新:科技与文化的完美融合

人工智能在文化遗产保护中的创新:科技与文化的完美融合 引言 文化遗产是人类历史的见证,是我们了解过去、感知现在、展望未来的重要宝贵资源。然而,随着时间的流逝,自然灾害、战争、气候变化以及人为因素等,都对文化遗产的保护造成了严峻挑战。传统的文化遗产保护方法虽…...

linux下OSD使用SDL_ttf生成点阵数据,移植+开发代码详解

前言 在做音视频开发的时候&#xff0c;一般会在视频上增加osd水印&#xff0c;时间或者logo之类的&#xff0c;这种水印其实就是由点阵数据构成&#xff0c;本文使用freetypeSDLSDL_ttf生成文字点阵数据&#xff0c;并保存为bmp格式图片。使用这种方式的优点&#xff1a; 方便…...

渗透测试方向的就业前景怎么样?

互联网各领域资料分享专区(不定期更新)&#xff1a; Sheet 前言 渗透测试作为网络安全领域的重要分支&#xff0c;近年来就业前景持续向好&#xff0c;尤其在数字化转型加速、安全威胁加剧的背景下&#xff0c;市场需求显著增长。以下是详细分析&#xff1a; 一、市场需求旺盛 …...

SQL Server:查看当前连接数和最大连接数

目录标题 **1. 查看当前连接数****使用系统视图****使用动态管理视图** **2. 查看最大连接数****通过配置选项****通过服务器属性** **3. 查看连接数的实时变化****4. 设置最大连接数****5. 查看连接的详细信息****6. 使用 SQL Server Management Studio (SSMS)****7. 使用 SQL…...

Windows环境搭建ES集群

搭建步骤 下载安装包 下载链接&#xff1a;https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.27-windows-x86_64.zip 解压 解压并复制出3份 es-node1配置 config/elasticsearch.yml cluster.name: xixi-es-win node.name: node-1 path.data: D:\\wor…...

【第15章:量子深度学习与未来趋势—15.3 量子深度学习在图像处理、自然语言处理等领域的应用潜力分析】

一、开篇:为什么我们需要关注这场"量子+AI"的世纪联姻? 各位技术爱好者们,今天我们要聊的这个话题,可能是未来十年最值得押注的技术革命——量子深度学习。这不是简单的"1+1=2"的物理叠加,而是一场可能彻底改写AI发展轨迹的范式转移。 想象这样一个…...

DeepSeek与ChatGPT:AI语言模型的全面对决

DeepSeek与ChatGPT&#xff1a;AI语言模型的全面对决 引言&#xff1a;AI 语言模型的时代浪潮一、认识 DeepSeek 与 ChatGPT&#xff08;一&#xff09;DeepSeek&#xff1a;国产新星的崛起&#xff08;二&#xff09;ChatGPT&#xff1a;AI 界的开拓者 二、DeepSeek 与 ChatGP…...

DeepSeek-V3模型底层架构的核心技术一(多Token预测(MTP)技术)

一、DeepSeek-V3的框架结构 DeepSeek-V3的框架结构基于三大核心技术构建:多头潜在注意力(MLA)、DeepSeekMoE架构和多token预测(MTP)。这些创新使得模型在处理长序列、平衡计算负载以及生成连贯文本方面表现出色。 1. 基础架构 DeepSeek-V3的基础架构仍然基于Transformer框…...

QT c++ QMetaObject::invokeMethod函数 线程给界面发送数据

在项目开发时&#xff0c;常常需要用线程采集数据&#xff0c;如果要给界面发送数据&#xff0c;本文是方法之二&#xff0c;动态调用。 第一步&#xff1a;在界面类里定义一个带Q_INVOKABLE关键字的函数接收信息 第二步&#xff1a;在线程类里&#xff0c;用 QMetaObject::i…...

netcore https配置

一、生成证书 1. 安装 OpenSSL 如果尚未安装 OpenSSL&#xff0c;可以通过以下命令安装&#xff1a;Ubuntu/Debian:sudo apt update sudo apt install openssl CentOS/RHEL:sudo yum install openssl 2. 生成私钥 使用以下命令生成私钥文件&#xff08;private.key&#xff09…...

centos部署open-webui

提示&#xff1a;本文将简要介绍一下在linux下open-webui的安装过程,安装中未使用虚拟环境。 文章目录 一、open-webui是什么&#xff1f;二、安装流程1.openssl升级2.Python3.11安装3.sqlite安装升级4.pip 下载安装open-webui 总结 一、open-webui是什么&#xff1f; Open W…...

sql语言语法的学习

sql通用语法 sql分类 DDL(操作数据库和表) 操作数据库 操作表_查询 操作表_创建 举例&#xff1a; 操作表_删除 操作表_修改 DML(增删改表中数据) DML添加数据 DML删除数据 DML修改数据 DQL 单表查询 基础查询 条件查询 案例演示&#xff1a; 排序查询 聚合函数 分组查询…...

vueDevtools和文档整合(前端常用工具/插件)

3.vueDevtools安装 chrome插件vue-devtools下载地址&#xff1a; https://chrome.zzzmh.cn/info/nhdogjmejiglipccpnnnanhbledajbpd下载完放到chrome的拓展程序中即可&#xff0c;注意点&#xff1a;vue2和vue3下载版本不同&#xff0c;vue2的话使用稍微老点的版本才行。 详细…...

算法刷题--哈希表--字母异位词和两个数组的交集

哈希表概念 哈希表是根据关键码的值而直接进行访问的数据结构。 直白来讲数组就是一种哈希表。 那么哈希表能解决什么问题呢&#xff0c;一般哈希表都是用来快速判断一个元素是否出现集合里。 那么一般都是将一个集合里面的元素映射为哈希表的索引。 那么设计哈希表的时候需要…...