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

计算机网络 IP 网络层 2 (重置版)

IP的简介:

IP 地址是互联网协议地址(Internet Protocol Address)的简称,是分配给连接到互联网的设备的唯一标识符,用于在网络中定位和通信。

IP编制的历史阶段:

1,分类的IP地址:

(ip地址是全球唯一的32位的标识符,表示路由器的接口)

在互联网发展初期,为了便于对 IP 地址进行管理和分配,设计了分类的 IP 地址方案。

内容

将 IP 地址分为 A、B、C、D、E 五类。

A 类地址首位为 0,用于大型网络,网络号占 1 个字节,主机号占 3 个字节;

B 类地址前两位为 10,用于中等规模网络,网络号占 2 个字节,主机号占 2 个字节;

C 类地址前三位为 110,用于小型网络,网络号占 3 个字节,主机号占 1 个字节;

D 类地址前四位为 1110,是组播地址;

E 类地址前四位为 1111,保留用于科研等特殊用途。

特点

这种编址方式简单直观,易于管理和分配,网络管理员可以根据网络规模选择合适类别的地址。但缺点是地址空间利用率不高,比如 A 类网络能容纳大量主机,但实际中很少有网络需要这么多主机地址,造成了地址浪费;同时,路由表项数量较多,随着网络规模扩大,路由器负担加重。

 

一些特别的IP地址:

(前两个网络号全0,表示本网络,可以当做源地址,不可以当做目的地址)

(第三个不能当做源地址,只可以当做目的地址)

一些私有IP地址:

(路由器不会对目的地址是私有地址的数据包转发)

一些解释:因为A类的网络号只是前一个字节,所以只有10这一个网段

B类是前2个字节,第一个字节固定(172),第二个变化,是16-31  

C类是前3个字节,第一个和第二个固定(192.168)第三个变化0-255

 

NAT技术:

基本概念

NAT 是一种将私有地址转化为合法 IP 地址的转换技术,它被广泛应用于各种类型 Internet 接入方式和各种类型的网络中。通过在路由器或防火墙等设备上配置 NAT 功能,使得内部网络中的多个设备可以共享一个或少数几个公网 IP 地址来访问外部网络。

工作原理

地址转换类型:主要有静态 NAT、动态 NAT 和网络地址端口转换 NAPT(Network Address Port Translation)。

静态 NAT: 是将内部网络的私有 IP 地址与外部网络的公有 IP 地址进行一对一固定映射;

动态 NAT: 则是从一个公有 IP 地址池中动态地为内部网络设备分配公有 IP 地址

NAPT :是最常用的一种方式,它不仅转换 IP 地址,还会转换端口号,使得多个内部设备可以通过同一个公有 IP 地址不同端口号来与外部网络进行通信。

转换过程:当内部网络中的设备发送数据包到外部网络时,NAT 设备会将数据包中的源 IP 地址替换为自己的公网 IP 地址,并记录下这个转换关系。当外部网络设备返回响应数据包时,NAT 设备再根据记录的转换关系,将目的 IP 地址转换回内部设备的私有 IP 地址,从而实现通信。

作用和应用场景

节省公网 IP 地址资源:在内部网络设备数量较多而公网 IP 地址有限的情况下,NAT 技术可以让多个设备共享少量的公网 IP 地址,大大缓解了公网 IP 地址短缺的问题。

增强网络安全性:NAT 隐藏了内部网络的真实 IP 地址,外部网络只能看到 NAT 设备的公网 IP 地址,一定程度上提高了内部网络的安全性,减少了外部网络对内部网络的直接攻击面。

网络部署灵活性:方便企业或机构在不改变内部网络 IP 地址规划的情况下,接入不同的互联网服务提供商,只需在 NAT 设备上配置相应的公网 IP 地址即可。

 

 

2,子网划分

子网划分是将一个较大的网络划分为多个较小的子网的过程,以下是关于子网划分的详细介绍:

目的:

提高 IP 地址利用率:通过子网划分,可以根据不同部门或区域的主机数量需求,合理分配 IP 地址,避免地址空间的浪费。(只是对内看着是划分后的,但是对外是一个整体网络

增强网络安全性:不同子网之间可以通过访问控制列表(ACL)等手段进行隔离,限制网络流量,提高网络的安全性。

优化网络性能:将一个大型网络划分为多个子网后,每个子网内的广播域变小,减少了广播风暴的影响范围,提高了网络性能。

 

原理:

子网划分的核心是利用子网掩码来确定网络地址和主机地址的边界。子网掩码是一个 32 位的二进制数,与 IP 地址进行按位 “与” 运算,得到网络地址。子网掩码中连续的 1 表示网络部分,连续的 0 表示主机部分。通过改变子网掩码中 1 的位数,可以将一个网络划分为不同大小的子网。

 

子网掩码:

网络号区域的子网掩码全1,其他地方的全0,

子网地址:网络地址恶化子网掩码相与之后的地址

 

 

3,构成超网(无分类编制方法)

构成超网(Supernetting)与子网划分相反,是将多个连续的网络地址块合并成一个更大的网络地址块的过程,也称为路由聚合。以下是关于构成超网的详细介绍:

目的;

减少路由表条目数量:在互联网中,路由器需要存储和处理大量的路由信息。通过构成超网,可以将多个相邻的网络地址聚合为一个条目,显著减少路由表的规模,降低路由器的存储和处理负担,提高路由查找效率和网络性能。

优化网络资源分配:当网络规模不断扩大,需要整合多个较小的网络时,构成超网可以将这些网络合并为一个更大的逻辑网络,便于网络的管理和资源分配,提高网络的可扩展性和灵活性。

 

原理:

超网是基于无类域间路由(CIDR)技术实现的。其核心是通过缩短网络前缀的长度,将多个具有相同高位网络位的网络地址块合并为一个更大的网络地址块。例如,有 4 个 C 类网络地址:192.168.0.0、192.168.1.0、192.168.2.0、192.168.3.0,它们的前 22 位网络位是相同的(11000000.10101000.00000000),可以将它们聚合为一个超网地址 192.168.0.0/22,其中 “/22” 表示网络前缀长度为 22 位。

 

CIDR技术:

基本概念

CIDR 是一种用于给 IP 地址进行分类和分配的方法,它打破了传统的 A、B、C 类地址的分类方式,采用无类别的编址方式,以网络前缀来表示网络地址和子网掩码,用 “IP 地址 / 前缀长度” 的形式来表示一个网络地址块。

如:192.199.170.82/27  ,前27位是网络号,后5位是主机号

工作原理

地址聚合与划分CIDR 通过可变长度的子网掩码,能够更灵活地对 IP 地址空间进行划分和聚合。例如,多个连续的 C 类网络地址可以聚合为一个更大的网络地址块,通过缩短网络前缀来实现;也可以将一个较大的网络地址块根据需要划分为更小的子网,通过增加网络前缀长度来实现。

路由查找:在路由器进行路由查找时,根据目的 IP 地址和路由表中的网络前缀进行最长匹配原则查找。即路由器会选择网络前缀与目的 IP 地址匹配位数最长的路由条目来转发数据包,这样可以提高路由查找的效率,减少路由表的规模。

作用和应用场景

提高 IP 地址空间利用率:CIDR 可以根据实际网络规模和需求,更精细地分配 IP 地址,避免了传统分类地址方式下的地址浪费现象,使得 IP 地址资源能够得到更充分的利用。

减少路由表规模:通过地址聚合技术,将多个连续的网络地址块合并为一个路由条目,大大减少了路由表中的条目数量,降低了路由器的存储和处理负担,提高了路由器的转发效率和网络性能。

支持大规模网络互联:在互联网骨干网等大规模网络环境中,CIDR 技术能够更好地适应网络的扩展性和复杂性,方便网络运营商进行网络规划和管理,实现不同网络之间的高效互联。

 

一些协议:

ARP协议:

是一种用于在局域网(LAN)中将 IP 地址映射物理硬件地址(如 MAC 地址),从而实现在网络中通信的协议。

 

ARP 协议的主要功能:

1.解析 IP 地址和 MAC 地址的映射关系:当一个设备需要通过 IP 地址与另一个设备通信时,它需要知道目标设备的 MAC 地址。ARP 协议允许设备发送 ARP 请求消息,以查询目标 IP 地址对应的 MAC 地址

2.缓存 IP 地址和 MAC 地址的映射关系:设备在进行 ARP 解析时,会将查询到的 IP 地址和 MAC 地址的映射关系存储在本地的 ARP 缓存中。在后续的通信中,设备可以直接使用缓存中的映射关系,避免发送新的 ARP 请求。

3.更新映射关系:ARP 协议支持动态更新映射关系。当设备在网络中发现 IP 地址和 MAC 地址发生变化时,它会发送 ARP 广播消息来通知其他设备更新相应的映射关系。

 

ARP 协议的工作原理:

1.地址查询:当一台设备(发送方)需要与另一台设备(目标方)进行通信时,它首先检查自己的 ARP 缓存中是否存在目标设备 IP 地址对应的 MAC 地址。如果存在,就在 ARP 缓存中查出其对应的硬件地址,再把这个硬件地址写入 MAC 帧,然后通过局域网把该 MAC 帧发往此硬件地址。如果不存在,则需要进行地址查询。

 

2.ARP 请求广播:如果在 ARP 缓存中无法查到目标设备的 IP 地址,发送方设备则创建一个 ARP 请求报文,其中包含自己的 MAC 地址、IP 地址和目标设备的 IP 地址。然后,发送方设备将该 ARP 请求报文广播到局域网上的所有设备。

 

3.目标设备响应:局域网上的所有主机都会接收到 ARP 请求报文,但只有目标设备会响应。目标设备接收到 ARP 请求报文后,会检查自己的 IP 地址是否与请求报文中的目标 IP 地址相匹配。如果匹配,则目标设备创建一个 ARP 响应(ARP reply)报文,其中包含自己的 MAC 地址和 IP 地址,并将该响应报文发送回发送方设备。

 

4.地址缓存更新:发送方设备收到目标设备的 ARP 响应报文后,将目标设备的 IP 地址和 MAC 地址映射关系添加到自己的 ARP 缓存中。这样,在以后与目标设备的通信中,发送方设备就可以直接从 ARP 缓存中获取目标设备的 MAC 地址,而无需再次发送 ARP 请求。

如何分配IP地址?

1,静态配置:

iP 地址的静态分配是指网络管理员在网络设备(如计算机、服务器、路由器等)上手动配置固定的 IP 地址、子网掩码、默认网关和 DNS 服务器地址等网络参数。与动态分配不同,静态分配的 IP 地址不会随着设备的重启或网络连接的变化而改变,它始终保持固定,除非管理员手动进行修改。

2,动态配置:

DHCP协议:

是一种用于在网络中自动分配 IP 地址等网络配置参数的应用层协议

 

DHCP 协议的基本功能

1,自动分配 IP 地址:在一个网络中,特别是大型网络,手动为每台设备配置 IP 地址是一项繁琐且容易出错的任务。DHCP 可以自动为网络中的设备(如计算机、打印机、智能手机等)分配 IP 地址,减少了网络管理员的工作量,也避免了因手动配置错误而导致的网络问题。

2,分配其他网络配置参数:除了 IP 地址,DHCP 还可以分配子网掩码、默认网关、DNS(域名系统)服务器地址等网络配置参数。这些参数对于设备正确地在网络中进行通信至关重要。子网掩码用于确定设备所在的网络范围;默认网关是设备访问其他网络的出口;DNS 服务器地址则用于将域名转换为 IP 地址,使得用户可以通过域名访问网站等网络资源。

 

DHCP 协议的工作原理

1,(发现阶段):

当一台设备(DHCP 客户端)首次接入网络并需要获取 IP 地址等配置信息时,它会发送一个 DHCP Discover 广播消息。因为此时设备还没有 IP 地址,所以采用广播方式,以确保网络中的 DHCP 服务器能够接收到请求。这个消息包含了一些客户端的基本信息,如客户端的 MAC地址,用于唯一标识设备,使得服务器能够针对该设备进行配置。

2,(提供阶段):

网络中的 DHCP 服务器接收到 广播消息后,会从自己的 IP 地址池中选择一个可用的 IP 地址,并构建一个 DHCP Offer 消息。这个消息包含了为客户端提供的 IP 地址、子网掩码、默认网关、DNS 服务器地址等配置信息

然后,DHCP 服务器将 DHCP Offer 消息以广播的形式发送回网络,因为客户端还没有 IP 地址,无法接收单播消息。此时,可能有多个 DHCP 服务器收到了客户端的 Discover 消息并都发送了 Offer 消息客户端会选择其中一个 Offer

3,(请求阶段)

客户端接收到多个 DHCP Offer 消息后,会选择其中一个(通常是最先接收到的),然后向该 DHCP 服务器发送一个 DHCP Request 消息。这个消息告诉服务器,客户端接受了它提供的 IP 地址和其他配置参数。

同时,这个消息也是广播形式,目的是通知其他 DHCP 服务器,客户端已经选择了某个服务器提供的配置,其他服务器可以将之前为该客户端准备的 IP 地址等资源收回

4,(确认阶段)

DHCP 服务器接收到客户端的 DHCP Request 消息后,会发送一个 DHCP Acknowledge 消息作为回应。这个消息确认客户端可以使用之前提供的 IP 地址和其他配置参数,并且服务器会将该 IP 地址标记为已分配状态,避免重复分配。

此时,客户端接收到 DHCP Acknowledge 消息,就可以使用分配到的 IP 地址和其他配置参数在网络中进行通信了。

 

DHCP 协议的优点:

1,高效管理 IP 资源:通过自动分配和回收 IP 地址,提高了 IP 地址的利用率,尤其是在动态变化的网络环境中,如企业网络中员工设备的频繁接入和离开,以及公共场所的 Wi - Fi 网络等。

2,减少配置错误:避免了因手动配置 IP 地址等参数而可能出现的错误,如 IP 地址冲突、子网掩码设置错误等,从而提高了网络的稳定性和可靠性。

3,易于网络扩展:当网络中有新设备加入时,无需人工干预即可自动完成配置,方便了网络的扩展和维护。

 

 

ICMP协议:

互联网控制消息协议,是网络层的一个重要协议。它主要用于在 IP 主机、路由器之间传递控制消息,这些控制消息对于诊断网络问题、测试网络连通性等方面非常重要。ICMP 协议是 IP 协议的补充它使用 IP 协议进行传输,但是 ICMP 消息是封装在 IP 数据报中的。

 

ICMP的报文格式:

第一行(4个字节)的内容是一样的

 

5个差错报文

 

1,终点不可达:当路由器或主机不能交付数据报时就向源点发送终点不可达报文。

2,源点抑制:(拥塞丢数据时,才会用到)当路由器或主机由于拥塞而丢弃数据报时,就向源点发送源点抑制报文,使源点知道应当把数据报发送速率慢一点。

3,时间超过:当路由器收到生存时间TTL=0的数据报时,除丢弃该数据报外,还要向源点发送时间超过报文。当终点在预先规定的时间内不能收到一个数据报的全部数据报片时,就把已收到的数据报片都丢弃,并向源点发送时间超过报文

4,参数问题:当路由器或目的主机收到的数据报的首部中有的字段的值不正确时,就丢弃该数据报,并向源点发送参数问题报文。

5,改变路由:路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器(可通过更好的路由)。

 

报文类型:

差错报告报文

目的不可达:当路由器或主机无法将数据包交付到目的地址时,会发送目的不可达报文,具体包括网络不可达、主机不可达、协议不可达、端口不可达等多种情况。

源抑制:用于通知源主机由于网络拥塞,其发送数据的速率过快,需要降低发送速率。

超时:当数据包在网络中传输的时间超过了设定的生存时间(TTL)值时,路由器会丢弃该数据包,并向源主机发送超时报文。

参数问题:如果路由器或主机在处理数据包时发现首部字段中有错误,会发送参数问题报文,通知源主机数据包存在问题。

(不发生ICMP差错报文的情况

1,ICMP差错报告报文出错不发送ICMP差错报告报文

2,第一个分片的所有后续数据分片不发送

3,组播地址都不发送

4,特殊地址的数据报不发送

 

查询报文

请求和回答报文这是 Ping 命令使用的报文类型。源主机发送回显请求报文,目的主机收到后会发送回显应答报文,用于测试网络连通性和往返时间。(可达否)

时间戳请求和时间戳应答:用于两台主机之间进行时间同步和测量时间延迟。源主机发送时间戳请求报文,目的主机在收到后返回时间戳应答报文,其中包含了请求和应答的时间信息。

地址掩码请求和地址掩码应答:主机可以通过发送地址掩码请求报文,向路由器或其他主机请求获取本地网络的子网掩码,对方则通过地址掩码应答报文返回子网掩码信息

路由器请求和路由器通告:主机可以发送路由器请求报文,请求本地网络中的路由器发送路由器通告报文,以获取路由器的相关信息,如路由器的 IP 地址、网络前缀等。路由器会定期或在收到请求时发送路由器通告报文。

 

工作原理

ICMP 报文通常作为 IP 数据包的数据部分进行传输,其首部包含了一些重要的字段,如类型、代码、校验和等。不同类型的 ICMP 报文具有不同的格式和用途。当主机或路由器接收到 IP 数据包时,会首先检查 IP 首部中的协议字段,如果是 ICMP 协议,则将数据包交给 ICMP 模块进行处理。ICMP 模块根据报文的类型和代码进行相应的操作,如生成差错报告报文、发送查询响应等。

 

应用场景

网络故障排查:当网络出现故障时,管理员可以使用 Ping(连通性) 和 Traceroute(跟踪路径) 等工具,通过发送 ICMP 报文来确定故障的位置和原因。例如,如果 Ping 某个主机时无法收到响应,可以逐步排查网络连接、路由器配置等问题。

网络性能测试:通过发送大量的 ICMP Echo Request 报文并统计响应时间和丢包率等指标,可以评估网络的性能,如网络延迟、带宽利用率等。

网络拓扑发现:利用 ICMP 协议的路由器通告等功能,主机可以获取本地网络中的路由器信息,从而了解网络的拓扑结构。

 

 

 

相关文章:

计算机网络 IP 网络层 2 (重置版)

IP的简介: IP 地址是互联网协议地址(Internet Protocol Address)的简称,是分配给连接到互联网的设备的唯一标识符,用于在网络中定位和通信。 IP编制的历史阶段: 1,分类的IP地址: …...

松灵机器人 scout ros2 驱动 安装

必须使用 ubuntu22 必须使用 链接的humble版本 #打开can 口 sudo modprobe gs_usbsudo ip link set can0 up type can bitrate 500000sudo ip link set can0 up type can bitrate 500000sudo apt install can-utilscandump can0mkdir -p ~/ros2_ws/srccd ~/ros2_ws/src git cl…...

【Leetcode 每日一题】541. 反转字符串 II

问题背景 给定一个字符串 s s s 和一个整数 k k k,从字符串开头算起,每计数至 2 k 2k 2k 个字符,就反转这 2 k 2k 2k 字符中的前 k k k 个字符。 如果剩余字符少于 k k k 个,则将剩余字符全部反转。如果剩余字符小于 2 k…...

掌握API和控制点(从Java到JNI接口)_35 JNI开发与NDK 03

3、 如何载入 .so档案 VM的角色 由于Android的应用层级类别都是以Java撰写的,这些Java类别转译为Dex型式的Bytecode之后,必须仰赖Dalvik虚拟机器(VM: Virtual Machine)来执行之。 VM在Android平台里,扮演很重要的角色。此外,在执…...

解锁豆瓣高清海报(二) 使用 OpenCV 拼接和压缩

解锁豆瓣高清海报(二): 使用 OpenCV 拼接和压缩 脚本地址: 项目地址: Gazer PixelWeaver.py pixel_squeezer_cv2.py 前瞻 继上一篇“解锁豆瓣高清海报(一) 深度爬虫与requests进阶之路”成功爬取豆瓣电影海报之后,本文将介绍如何使用 OpenCV 对这些海报进行智…...

【C/C++】Windows SAPI自实现文字转语音

本文通过封装Windows SAPI(Speech Application Programming Interface),提供了一个现代化的C接口实现文字转语音功能。主要特性包括支持同步/异步语音合成、可调节语速(-10到10)和音量控制(0-100%&#xff…...

openmv的端口被拆分为两个 导致电脑无法访问openmv文件系统解决办法 openmv USB功能改动 openmv驱动被更改如何修复

我之前误打误撞遇到一次,直接把openmv的全部端口删除卸载然后重新插上就会自动重新装上一个openmv端口修复成功,大家可以先试试不行再用下面的方法 全部卸载再重新插拔openmv 要解决OpenMV IDE中出现的两个端口问题,可以尝试以下步骤&#x…...

8.攻防世界Web_php_wrong_nginx_config

进入题目页面如下 尝试弱口令密码登录 一直显示网站建设中,尝试无果,查看源码也没有什么特别漏洞存在 用Kali中的dirsearch扫描根目录试试 命令: dirsearch -u http://61.147.171.105:53736/ -e* 登录文件便是刚才登录的界面打开robots.txt…...

音叉模态分析

目录 0 序言 1 自由状态下模态求解 1.1 添加模态项目 1.2 生成网格 1.3 设置最大模态阶数 1.4 求解 1.5 结果查看 1.6 结果分析 2 音叉能否释放频率440Hz的音调 3 预应力模态求解 3.1 静态结构分析 3.1.1 添加静态结构项目 3.1.2生成网格 3.1.3添加边界条件 3.1…...

智慧园区系统集成解决方案引领未来城市管理的智能化转型

内容概要 在现代城市管理的背景下,“智慧园区系统集成解决方案”正扮演着越来越重要的角色。这种解决方案不仅仅是技术上的创新,更是一种全新的管理理念,它旨在通过高效的数据整合与分析,优化资源配置,提升运营效率。…...

(即插即用模块-特征处理部分) 二十、(TPAMI 2022) Permute-MLP 置换MLP模块

文章目录 1、Permute-MLP layer2、代码实现 paper:Vision Permutator: A Permutable MLP-Like Architecture for Visual Recognition Code:https://github.com/Andrew-Qibin/VisionPermutator 1、Permute-MLP layer 传统的 MLP-like 模型(如…...

FBX SDK的使用:基础知识

Windows环境配置 FBX SDK安装后,目录下有三个文件夹: include 头文件lib 编译的二进制库,根据你项目的配置去包含相应的库samples 官方使用案列 动态链接 libfbxsdk.dll, libfbxsdk.lib是动态库,需要在配置属性->C/C->预…...

爬虫基础(二)Web网页的基本原理

一、网页的组成 网页由三部分构成:HTML、JavaScript、CSS。 (1)HTML HTML 相当于网页的骨架,它通过使用标签来定义网页内容的结构。 举个例子: 它把图片标签为img、把视频标签为video,然后组合到一个界面…...

1.4 Go 数组

一、数组 1、简介 数组是切片的基础 数组是一个固定长度、由相同类型元素组成的集合。在 Go 语言中,数组的长度是类型的一部分,因此 [5]int 和 [10]int 是两种不同的类型。数组的大小在声明时确定,且不可更改。 简单来说,数组…...

爬虫基础(三)Session和Cookie讲解

目录 一、前备知识点 (1)静态网页 (2)动态网页 (3)无状态HTTP 二、Session和Cookie 三、Session 四、Cookie (1)维持过程 (2)结构 正式开始说 Sessi…...

hive:基本数据类型,关于表和列语法

基本数据类型 Hive 的数据类型分为基本数据类型和复杂数据类型 加粗的是常用数据类型 BOOLEAN出现ture和false外的其他值会变成NULL值 没有number,decimal类似number 如果输入的数据不符合数据类型, 映射时会变成NULL, 但是数据本身并没有被修改 创建表 创建表的本质其实就是在…...

Maya软件安装步骤与百度网盘链接

软件简介: MAYA软件是Autodesk旗下的著名三维建模和动画软件。maya软件功能更为强大,体系更为完善,因此国内很多的三维动画制作人员都开始转向maya,maya软件已成为三维动画软件的主流。 百度网盘链接: https://pan.baidu.com/s…...

error: RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054

Descriptions: Solutions:...

PID算法的数学实现和参数确定方法

目录 概述 1 算法描述 1.1 PID算法模型 1.2 PID离散化的图形描述 1.3 PID算法的特点 2 离散化的PID算法 2.1 位置式PID算法 2.2 增量式PID算法 2.3 位置式PID与增量式PID比较 3 控制器参数整定 3.1 PID参数确定方法 3.1.1 凑试法 3.1.2 临界比例法 3.1.3 经验法…...

【已解决】ECharts 没有在页面生效

元素高度问题: ECharts 需要一个具有明确高度的容器来渲染图表,也就是说 echartsRef 元素需要一个明确的 div 高度。我项目中的问题就是在 .base-echarts(我项目中的最外层元素) 上设置了高度为 300px,但没有为 .echar…...

三角函数正交性应用--以信号分离为例

三角函数的正交性的应用 引言 在信号处理、通信等众多领域中,三角函数的正交性发挥着至关重要的作用。它不仅是理论分析的基础,更是实际应用中解决各种问题的有力工具。本文将详细介绍三角函数正交性的定义、证明,并通过一个具体的信号处理…...

ASP.NET Core 中使用依赖注入 (DI) 容器获取并执行自定义服务

目录 一、ASP.NET Core 中使用依赖注入 (DI) 容器获取并执行自定义服务 1. app.Services 2. GetRequiredService() 3. Init() 二、应用场景 三、依赖注入使用拓展 1、使用场景 2、使用步骤 1. 定义服务接口和实现类 2. 注册服务到依赖注入容器 3. 使用依赖注入获取并…...

一个数如果恰好等于他的因子之和,这是就成为“完数“,例如6=1+2+3.编程找出1000以内的所有完数

from sys import stdoutfor i in range(2,1001):k[] #用于存储因子si #初始化s为当前数字ifor j in range(1,i):if i%j0: #如果j是i的因子s-j #从s中减去银子jk.append(j) #将因子j加入列表kif s0:#如果s最终为0,说明i是一个完数print(i)for j in range(len(k)): #遍历银子列表…...

理解 InnoDB 如何处理崩溃恢复

在数据库领域,数据的一致性与可靠性至关重要。InnoDB 存储引擎的崩溃恢复机制是保障数据安全的核心,其中 Doublewrite Buffer 和 Redo Log 发挥着关键作用。下面,我们将详细探讨 InnoDB 从写入到崩溃恢复的全过程。 一、写入流程 修改页面&…...

Linux-CentOS的yum源

1、什么是yum yum是CentOS的软件仓库管理工具。 2、yum的仓库 2.1、yum的远程仓库源 2.1.1、国内仓库 国内较知名的网络源(aliyun源,163源,sohu源,知名大学开源镜像等) 阿里源:https://opsx.alibaba.com/mirror 网易源:http://mirrors.1…...

Redis复制

一、Redis复制: 1.为了解决分布式中单点故障问题,通常会把数据复制多个副本部署到其他机器上来解决故障恢复和负载均衡等需求。 2.建立复制 参与复制的redis实例划分为主节点(master)和从节点(slave),每个从…...

小白怎样部署和使用本地大模型DeepSeek ?

1 安装Ollama (1) 下载Ollama 从https://ollama.com/download 下载, 根据你的系统下载对应的版本,支持Win, Mac ,Linux: 如果下载不了,右键复制链接地址,贴到迅雷,指定可以下载下来。 (2) 安…...

ECharts 样式设置

ECharts 样式设置 引言 ECharts 是一款功能强大的可视化库,广泛用于数据可视化。样式设置是 ECharts 中的重要一环,它能够帮助开发者根据需求调整图表的视觉效果,使其更加美观和易于理解。本文将详细介绍 ECharts 的样式设置,包…...

Java synchronized关键字和锁分类

专栏系列文章地址:https://blog.csdn.net/qq_26437925/article/details/145290162 本文目标: 关于synchronized已经有很多博主很细致的讲解了,本文主要是通过代码例子再次理解下,并要求能头脑反射出相关知识点主要是锁分类的知识…...

Vue.js 新的生命周期钩子:`onMounted`, `onUpdated` 等

Vue.js 新的生命周期钩子:onMounted, onUpdated 等 今天我们来聊聊 Vue 3 中的生命周期钩子,特别是 onMounted、onUpdated 等。如果你对如何在 Vue 3 的组合式 API(Composition API)中使用这些钩子感到困惑,那么这篇文…...

OpenCV:闭运算

目录 1. 简述 2. 用膨胀和腐蚀实现闭运算 2.1 代码示例 2.2 运行结果 3. 闭运算接口 3.1 参数详解 3.2 代码示例 3.3 运行结果 4. 闭运算的应用场景 5. 注意事项 相关阅读 OpenCV:图像的腐蚀与膨胀-CSDN博客 OpenCV:开运算-CSDN博客 1. 简述…...

Android 音视频编解码 -- MediaCodec

引言 如果我们只是简单玩一下音频、视频播放,那么使用 MediaPlayer SurfaceView 播放就可以了,但如果想加个水印,加点其他特效什么的,那就不行了; 学习 Android 自带的硬件码类 – MediaCodec。 MediaCodec 介绍 Med…...

移动互联网用户行为习惯哪些变化,对小程序的发展有哪些积极影响

一、碎片化时间利用增加 随着生活节奏的加快,移动互联网用户的碎片化时间越来越多。在等公交、排队、乘坐地铁等间隙,用户更倾向于使用便捷、快速启动的应用来满足即时需求。小程序正好满足了这一需求,无需下载安装,随时可用&…...

数据分析系列--②RapidMiner导入数据和存储过程

一、下载数据 二、导入数据 1. 在本地计算机中创建3个文件夹 2. 从本地选择.csv或.xlsx 三、界面说明 四、存储过程 1.保存 Congratulations, you are done. 一、下载数据 点击下载AssociationAnalysisData.xlsx数据集 二、导入数据 1. 在本地计算机中创建3个文件夹 2. 从…...

Prometheus 中的 Exporter

在 Prometheus 生态系统中,Exporter 扮演着至关重要的角色,它们负责从不同的服务或系统中收集和暴露度量数据。本文将详细介绍 Exporter 的概念、类型以及如何有效使用它们将 Prometheus 集成到各种系统中进行监控。 什么是 Exporter? Exporter 是一段软件,它从应用程序或…...

从 HTTP/1.1 到 HTTP/3:如何影响网页加载速度与性能

一、前言 在最近使用Apipost时,突然注意到了http/1.1和http/2,如下图: 在我根深蒂固的记忆中,对于http的理解还停留在TCP协议、三次握手。由于我的好奇心,于是触发了我被动“开卷”,所以有了这篇文章&…...

GenAI 在金融服务领域的应用:2025 年的重点是什么

作者:来自 Elastic Karen Mcdermott GenAI 不是魔法 我最近参加了 ElasticON,我们与纽约 Elastic 社区一起度过了一天,讨论了使用检索增强生成 (retrieval augmented generation - RAG) 为大型语言模型 (large language models - LLMs) 提供…...

小红书文案生成器(基于openai API和streamlit)

prompt_text.py: # 专门用来放提示文本(系统提示、用户提示)system_prompt_text """ 你是小红书爆款写作专家,请你遵循以下步骤进行创作:首先产出5个标题(包含适当的emoji表情&#xff09…...

Spring AOP 入门教程:基础概念与实现

目录 第一章:AOP概念的引入 第二章:AOP相关的概念 1. AOP概述 2. AOP的优势 3. AOP的底层原理 第三章:Spring的AOP技术 - 配置文件方式 1. AOP相关的术语 2. AOP配置文件方式入门 3. 切入点的表达式 4. AOP的通知类型 第四章&#x…...

力扣面试150 快乐数 循环链表找环 链表抽象 哈希

Problem: 202. 快乐数 👩‍🏫 参考题解 Code public class Solution {public int squareSum(int n) {int sum 0;while(n > 0){int digit n % 10;sum digit * digit;n / 10;}return sum;}public boolean isHappy(int n) {int slow n, fast squa…...

【实战篇章】深入探讨:服务器如何响应前端请求及后端如何查看前端提交的数据

文章目录 深入探讨:服务器如何响应前端请求及后端如何查看前端提交的数据一、服务器如何响应前端请求HTTP 请求生命周期全解析1.前端发起 HTTP 请求(关键细节强化版)2. 服务器接收请求(深度优化版) 二、后端如何查看前…...

《AI大模型开发笔记》DeepSeek技术创新点

一、DeepSeek横空出世 DeepSeek V3 以颠覆性技术架构创新强势破局!革命性的上下文处理机制实现长文本推理成本断崖式下降,综合算力需求锐减90%,开启高效 AI 新纪元! 最新开源的 DeepSeek V3模型不仅以顶尖基准测试成绩比肩业界 …...

【大模型LLM面试合集】大语言模型架构_MHA_MQA_GQA

MHA_MQA_GQA 1.总结 在 MHA(Multi Head Attention) 中,每个头有自己单独的 key-value 对;标准的多头注意力机制,h个Query、Key 和 Value 矩阵。在 MQA(Multi Query Attention) 中只会有一组 k…...

实战技巧:如何快速增加网站的收录页面?

本文转自:百万收录网 原文链接:https://www.baiwanshoulu.com/43.html 要快速增加网站的收录页面,可以从以下几个方面进行实战优化: 一、内容优化 高质量原创内容 确保网站内容具备高质量与原创性,满足搜索引擎对独…...

20-30 五子棋游戏

20-分析五子棋的实现思路_哔哩哔哩_bilibili20-分析五子棋的实现思路是一次性学会 Canvas 动画绘图(核心精讲50个案例)2023最新教程的第21集视频,该合集共计53集,视频收藏或关注UP主,及时了解更多相关视频内容。https:…...

PYH与MAC的桥梁MII/MIIM

在学习车载互联网时,看到了一句话,Processor通过DMA直接存储访问与MAC之间进行数据的交互,MAC通过MII介质无关接口与PHY之间进行数据的交互。常见的以太网硬件结构是,将MAC集成进Processor芯片,将PHY留在Processor片外…...

pytorch基于 Transformer 预训练模型的方法实现词嵌入(tiansz/bert-base-chinese)

以下是一个完整的词嵌入(Word Embedding)示例代码,使用 modelscope 下载 tiansz/bert-base-chinese 模型,并通过 transformers 加载模型,获取中文句子的词嵌入。 from modelscope.hub.snapshot_download import snaps…...

探秘 TCP TLP:从背景到实现

回家的路上还讨论了个关于 TCP TLP 的问题,闲着无事缕一缕。本文内容参考自 Tail Loss Probe (TLP): An Algorithm for Fast Recovery of Tail Losses 以及 Linux 内核源码。 TLP,先说缘由。自 TCP 引入 Fast retrans 机制就是为了尽力避免 RTO&#xf…...

MCU内部ADC模块误差如何校准

本文章是笔者整理的备忘笔记。希望在帮助自己温习避免遗忘的同时,也能帮助其他需要参考的朋友。如有谬误,欢迎大家进行指正。 一、ADC误差校准引言 MCU 片内 ADC 模块的误差总包括了 5 个静态参数 (静态失调,增益误差,微分非线性…...

国产之光DeepSeek架构理解与应用分析

目录 初步探索DeepSeek的设计 一、核心架构设计 二、核心原理与优化 三、关键创新点 四、典型应用场景 五、与同类模型的对比优势 六、未来演进方向 从投入行业生产的角度看 一、DeepSeek的核心功能扩展 二、机械电子工程产业中的具体案例 1. 预测性维护(Predictive…...