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

HCIP总结(一)

抽象语言---编码---二进制---电信号----处理电信号   (电脑工作流程)

OSI参考模型 ----OSI/RM  (核心思想:分层)

      应用层----提供各种应用服务,将抽象语言转换成编码,提供人机交互的接口

      表示层----将编码转换成二进制

      会话层----维持网络应用和网络服务器之间的会话连接

      传输层----实现端到端的通信 (端口号:0-65535 其中0不作为传输层端口号使用,其中1-1023成为著名端口号)

      网络层----使用IP地址实现主机之间的逻辑寻址

      数据链路层----控制物理硬件,将二进制转换为电信号。(注:在以太网中,数据链路层需通过MAC地址进行物理寻址)

      物理层----处理传递电信号

ARP协议

正向ARP:通过IP地址获取MAC地址

首先,主机通过广播的形式发送ARP请求,基于已知的IP地址,请求MAC地址。广播域内所有的设备都能收到请求包,所有收到数据包的设备都会记录数据包中源IP地址和源MAc地址的对应关系到本地的ARP缓存表中。之后,再看请求的IP地址,如果是本地的IP地址,则将进行ARP应答,将本地的MAC地址告知。如果不是本地的IP地址,则将直接丢弃该数据包。之后,再发送数据时,优先查看本地的ARP缓存表,如果表中存在记录,则将直接按照记录发送信息,如果没有记录,则再发送ARP请求包获取MAC地址。

反向ARP:通过MAC地址获取P地址

免费ARP:利用正向ARP原理请求自己的IP地址

1.自我介绍

2.检测地址冲突

TCP/IP

TCP/IP标准模型----四层模型

TCP/IP对等模型----五层模型

PDU ---- 协议数据单元

L1PDU

L2PDU

……

 L7PDU

应用层 --- 报文

传输层 --- 段

网络层 --- 包

数据链路层 --- 帧

物理层 ---比特流

封装和解封装

应用层 ---- 存在封装过程,取决于不同的应用

传输层 --- 端口号 -- TCP/UDP

网络层 --- IP地址 --- IP

数据链路层 --- MAC地址

物理层 ---无需封装,二进制转换为电信号

TCP/IP的跨层封装

目的:提高封装和解封装的速度。加快传输效率

1.跨四层封装----应用层的数据封装完成后,直接封装网络层数据(例:OSPF---89)应用在直连路由设备之间

2.跨三,四层封装----在应用封装之后直接封装二层数据,应用在直连交换设备之间

MAC子层----介质访问控制层----802.3

LLC子层----逻辑链路控制层----802.2

SOF----帧首定界符

DSAP----指明收到数据帧的设备上层使用什么协议处理数据

SSAP ----指明发送数据帧的设备上层产生的协议

Control ----1,无连接模式; 2,面向连接的模式----可以实现数据包的分片,重组,排序操作

Type --- 上层所使用的协议类型

Preamble ---前导符

IP地址

IPV4 ----32位二进制构成----点分十进制(32位分成4部分,转换成十进制)

IPV6 -----128位二进制构成----冒分十六进制

网络位----网络位相同,则代表在同一个广播域

主机位----在同一个广播域中,使用主机位来区分不同的主机

掩码----由连续的1和连续的0组成,1代表网络位,0代表主机位

IP地址的分类 --------A,B,C,D,E

A,B,C --- 单播地址 --- 既可以做源IP也可以做目标IP(无类别IP)

D --- 组播地址 --- 只能做为目标IP使用,不能作为源IP使用

E --- 保留地址

单播 --- 一对一

组播 -- 一对多(同一个组播组)

广播 -- 一对所有(广播域内的所有,仅作为目的IP使用)

IP地址分类原则:根据IP地址二进制的前八位数字特征进行分类

A:0XXX XXXX (0 - 127 ) 1 - 126

B:10XX XXXX 128 - 191

C:110X xxxx 192 - 223

D:1110 XXXX 224 - 239

E:1111 XXXX 240 - 255

掩码

A:255.0.0.0

B:255.255.0.0

C:255.255.255.0

IP地址空间中,有一部分IP地址被称为私有IP地址(私网IP地址),其余的被称为

公有IP地址(公网IP地址)----我们习惯性的将使用私网P地址搭建的网络称为私

,使用公共网IP地址搭建的网络称为公网。

----私网地址可以重复使用,但是在私网内部必须保证唯一性。

A: 10.0.0.0—10.25.255.255相当于1个A类网段

B: 172.16.0.0—172.31.25.255 相当于16个B类网段

C: 192.168.0.0—192.168.255.255相当于256个C类网段

特殊IP地址

1,127.0.0.0 - 127.255.255.255 --- 环回地址----主要用于检测,测试

2,255.255.255.255 --- 受限广播地址--- 受限于路由器 --- 只能作为目标IP使用

3,主机位全1 --- 192.168.1.255 --- 直接广播地址 (跨路由)--- 只能作为目标IP使用

4,主机位全0 --- 192.168.1.0 --- 网段 --- 网络号

5,0.0.0.0 ---- 1,代表没有IP(DHCP中会用);2,可以代表所有IP

6,169.254.0.0/16 --- 自动私有地址/本地链路地址(是否可以通信取决于周围网络环境)

 VLSM --- 可变长子网掩码(子网划分)

思路:从主机位向网络位借位

CIDR --- 无类域间路由(汇总)

思路:取相同,去不同

DHCP服务 ---- 动态主机配置协议

DHCP Discover----广播

应用层

DHCP Discover

传输层

UDP---SPORT:68           DPORT :67

网络层

IP---SIP:0.0.0.0    DIP:255.255.255.255

数据链路层

以太网协议----SMAC:00-16-D3-23-68-8A    DMAC:FFFF-FFFF-FFFF

交换机的转发原理

交换机收到电信号后,将电信号转换为二进制,之后,截取到数据帧。查看数据帧的源 MAC 地址,之后将该地址和数据进入的接口的对应关系记录在本地的 MAC 地址表中.----300s.

之后,看数据帧中的目的 MAC 地址,基于目标 MAC 地址查询本地 MAC 地址表,如果表中存在记录关系,则按照记录进行转发;若表中无记录关系,则将进行洪泛(交换机将数据从除了进入的接口外的所有接口发送一遍)

交换机洪泛的三种情况

.遇到广播帧

.遇到组播帧

.遇到未知单播地址

DHCP Offer 报文----广播/单播

应用层

DHCP OFFER

传输层

UDP---SPORT:67           DPORT :68

网络层

IP---SIP:68.85.2.1    DIP:68.85.2.101

数据链路层

以太网协议----SMAC:路由器    DMAC:00-16-D3-23-68-8A

DHCP Request报文----广播

应用层

DHCP Request

传输层

UDP---SPORT:68           DPORT :67

网络层

IP---SIP:0.0.0.0    DIP:255.255.255.255

数据链路层

以太网协议----SMAC:00-16-D3-23-68-8A    DMAC:FFFF-FFFF-FFFF

DHCP ack报文----广播/单播

应用层

DHCP ack

传输层

UDP---SPORT:67           DPORT :68

网络层

IP---SIP:68.85.2.1    DIP:68.85.2.101

数据链路层

以太网协议----SMAC:路由器    DMAC:00-16-D3-23-68-8A

DNS服务----域名解析协议

URL---资源界定符(协议+域名+文件所在路径)

目的:通过域名获取对应的地址

DNS端口号----53-----TCP/UDP

DNS查询过程(递归或迭代)

路由器转发原理

原理:路由器将基于数据包中的目的IP地址查询本地路由表。若路由表中存在记录,则无条件按照记录转发;若没有记录,则直接丢弃该数据包

获取未知网段的路由信息

直连路由:路由器默认生成可用的直连网段的路由条目

静态路由:由网络管理员手工配置的路由条目

动态路由:所有路由器运行相同的路由协议,之后通过路由器之间沟通交流,最终计算出路由条目。

HTTP----超文本传输协议

TCP----80,超文本---包含超链接和多媒体元素标记的文本

TCP协议:是一种面向连接的可靠性传输协议

可靠性

确认机制:传输确认,每接收一个数据段,则需要进行一次确认

重传机制:保障可靠性的最优机制,当一个数据段中某一个包丢失,会提醒要求重新传输这个报文

排序机制:传输一个数据段,被分为多个报文,从而不同路径传输,最终到达目的地的顺序会被打乱,所以需要重新进行排序。根据 TCP 数据包中的序号字段。

流控机制:滑动窗口机制----调节窗口大小从而对流量进行控制

 MSS = MTU - TCP 头部﹣ IP 头部(在 TCP 协议的选项字段)

PMTU ----路径 MTU 发现协议

在 IP 报头中,有一个字段是 DF ,该字段表明了 IP 报文是否允许分片, PMTU 功能开启后,会将该字段设置为1,表示不能分片。

此时当需要进行分片时,发现该报文不能分片,设备会丢弃该报文,并向发送方发送一个 ICMP 报文(数据不可达),同时鞋带上当前设备接口的 MTU 值。

发送方接收到该 ICMP 报文后,因为 TCP 重传机制,会重新发送一次数据,但是也会根据新的 MTU 值来生产新的报文进行传输。

TCP三次握手,四次挥手

静态路由

静态路由优点:1,不需要额外占用资源

                         2,静态路由安全性更高

                         3,选路由管理员选择,相对合理

             缺点:1,,配置量较大

                        2,静态路由无法基于网络拓扑结构的变化而自动收敛

基本配置:

方法一:[rlip route—static 192.168.3.0 24 192.168.2.2 —-需要进行递归查找出接口

方法二: [1lip route—static 192.168.3.02 4 GigabitEthernet 0/0/1-需要激活代理ARP

             [r2—GigabitEtherneto/O/0larp—proxy enable —激活代理ARP —-— ARP的一种,

方法三:[r1]ip route—static 192.168.3.0 24 GigabitEthernet 0/0/1 192.168.2.2

方法四: [rl]ip route—static 192.168.4.0 24 192.168.3.2

拓展配置:

1,负载均衡——当路由器访问同一个目标时具有多条开销相似的路径时,可以让流量进行拆分后同时从多条路径走,起到叠加带宽的效果。

2,手工汇总——当路由器可以访问多个连续的子网时,若均通过相同的下一跳,则

可以将这些网段进行汇总计算,直接写一条到达汇总网段的静态路由即可。可以减少路由表条目数量,提高转发效率。

3, 路由黒同 - 在江息中,知果包含同名中突所不存在的同段町, 可能造成流量有

去无回,浪费链路资源。合理的划分和汇总可以减少路由黑洞的产生

4,缺省路由——一条不限定目标的路由。在查表时,如果所有路由均未匹配,则将

匹配缺省路由。

[r1]ip route-static 0.0.0.0 0 12.0.0.2

5,空接口路由——防止路由黑洞和缺省路由相遇出环。在黑洞路由器上配置一条到达汇总网段指向空接口的路由。

1, NUL0一如果一条路由条目的出接口指向空接口,则匹配到这条路由信息

的数据报将被丢弃

2,路由表的匹配原则——最长匹配原则(精确匹配原则)

[r1]ip route-static 192.168.0.0 24 NULL 0

6,浮动静态路由——通过修改静态路由的默认优先级,达到备份的效果

[r2]ip route-static 192.168.0.0 22 21.0.0.1 preference 80

BFD

双向转发检测,是一种全网统一的检测机制,用于快速检测,监控网络链路或IP路由的转发联通状况

[r1]bfd  //启动bfd协议

[r1]bfd aa bing peer-ip 10.1.12.1   ----创建BDF会话,会话名称位aa(仅具有本地意义)对端IP

[r1-bfd-session-aa]discriminator local 20 ----会话本地标识符

[r1-bfd-session-aa]discriminator remote 10  ----会话对端标识符

[r1-bfd-session-aa]commit   ----必须提交配置,否则不生效

[r1]ip route-static 10.9.9.0 24 10.1.12.1 track bfd-session aa

[r1-bfd-session-aa]min-rx-interval 10   ---BFD报文接受时间间隔10毫秒

[r1-bfd-session-aa]min-tx-interval 10   ---BFD报文发送时间间隔10毫秒

[r1-bfd-session-aa]detect-multiplier 10 ---配置本底检测倍数10倍,即10次未收到bfd报文即为故障

网络类型及数据链路层协议

网络类型---根据数据链路层使用的协议来进行划分的,

网络类型分类

         MA ---多点接入网络

                 BMA ---广播型多点接入网络

      NBMA ---非广播型多点接入网络

P2P---点到点的网络

数据链路层协议

以太网协议---需要使用 MAC 地址对不同的主机设备进行区分和标识。---以太网之所以需要使用 MAC 地址进行数据寻址,主要是因为利用以太网组件的二层网络可以包含多个(两个或两个以上)的接口,每个以太网接口之间都可以通过交互以太网帧的方式进行二层通讯。

以太网 --- 频分 --- 所谓频分,就是在同一种传输介质上可以同时发送不同频段的电波,而互不干扰。实现数据的并行发送。

 HDLC----高级数据链路控制协议

           标准的 HDLC : ISO 组织颁布的满足工业标准的 HDLC 版本

非标的 HDLC :各大厂商基于标准的 HDLC 协议改进而来(默认情况下,思科设备组件的串线网络使用封装协议是 HDLC ,华为默认使用的是 PPP 协议。)

        [r1] display interface Serial 4/0/0           ---  查看接口的二层特征

        [r1-Serial4/0/0] link - protocol hdlc         ----修改二层的协议类型

 PPP----点到点协议

  1,兼容性强,有统一的版本,并且只要是支持全双工的串线,都可以使用 PPP 协议进行封装。    

2, PPP 协议具有很强的可移植性。--- PPPoE

 3,支持认证和授权

4.没有重传机制,开销小,速度快

PPP---会话建立

         PPP 协议和 TCP 协议类似,在传输数据之前,需要建立 PPP 的会话。

                1,链路建立阶段---LCP 建立

      2,认证阶段----PPP认证(可选项)

                 3,网络层协议协商阶段----NCP 协商

PPP链路建立阶段

1.Dead阶段----被称为物理层不可用阶段

当通讯双方的两端检测到物理链路激活,机会从dead阶段跃迁到Establish阶段

2.Wetablish---会进行LCP参数协商

在该阶段,当 LCP 参数协商成功后,会进入 opened 状态,表示底层链路已经建立。

3.Authenticate 阶段----大多数情况下,链路两端的设备是需要经过认证阶段后才能进入到网络层协议协商阶段。

 PPP 链路在缺省情况下,不要求进行认证

如果要求进行认证,则在链路建立阶段必须指定认证协议。

认证方式是在双方链路建立阶段进行协商的。

4.在 Network 阶段﹣-- PPP 链路进行 NCP 协商

通过 NCP 协商来选择和配置一个网络层协议并进行该网络层协议的参数协商。

只有当响应的网络层协议协商成功后,该网络层协议才可能通过这条 PPP 链路进行发送。.

5.NCP 协议成功后, PPP 链路将保持通讯状态

 o若 PPP 运行过程中,物理链路断开、认证失败、定时器超时、手工关闭连接等操作都会导致链路进入 Terminate 阶段

6.Terminate 阶段----链接关闭的阶段

若此时所有的链路资源均已被释放,则通讯双方都将回到初始态 Dead 状态,直到双方重新建立 PPP 连接。

PPP数据帧结构

 F -- Flag ---01111110

 A --- Address ---1111111

 C --- control ---00000011

协议 --- 表示上层使用的协议类型。

FCS --- 帧校验序列---确保数据完整性

LCP协议----链路控制协议---主要用于PPP会话建立的第一阶段协商过程

NCP协议----网络控制协议---是一系列的协议总称,完成PPP会话第三阶段是针对网络层协议进行协商,网络层所需使用的协议不同,则对应的NCP协议不同

LCP协议

LCP建立

1.MRU值:在PPP数据帧中所允许携带的最大数据单元,单位字节,默认1500

2.认证方式:根据第二阶段认证来判断,若存在认证,则协商认证方式;若不存在,则不需要协商

3.魔术字:用来检测链路中是否存在环路,是由本地设备随机生成的字符串(设备序列号,硬件地址)     

相关文章:

HCIP总结(一)

抽象语言---编码---二进制---电信号----处理电信号 (电脑工作流程) OSI参考模型 ----OSI/RM (核心思想:分层) 应用层----提供各种应用服务,将抽象语言转换成编码,提供人机交互的接口 表示层----将编码转换成二进制 …...

华为OD机试真题Python实现【黑板上色】真题+解题思路+代码(20222023)

题目 疫情过后希望小学终于又重新开学了,3 年 2 班开学第一天的任务是将后面的黑板报重新制作, 黑板上已经写上了N个正整数,同学们需要给这每个数分别上一种颜色, 为了让黑板报既美观又有学习意义,老师要求同种颜色的所有数都可以被这个颜色中最小的那个数整除, 现在帮小…...

C++中的利器——模板

前文本文主要是讲解一下C中的利器——模板,相信铁子们在学完这一节后,写代码会更加的得心应手,更加的顺畅。一,泛型编程想要学习模板,我们要先了解为什么需要模板,我们可以看看下面这个程序。int add(int&a…...

k8s控制器

目录 一、控制器简介 二、控制器类型 1、RC和RS 2、Deployment 3、DaemonSet 4、Job 5、CronJob 6、StateFulSet 7、HPA 一、控制器简介 在kubernetes中,按照Pod的创建方式可以将其分为两类: 自主式:kubernetes直接创建出来的Pod,…...

嵌入式学习笔记——认识STM32的 GPIO口

寄存器开发STM32GPIO口前言认识GPIOGPIO是什么GPIO有什么用GPIO怎么用STM32上GPIO的命名以及数量GPIO口的框图(重点)输入框图解析三种输入模式GPIO输入时内部器件及其作用1.保护二极管2.上下拉电阻(可配置)3.施密特触发器4.输入数…...

类和对象(中)

文章目录 继承的概念继承的语法父类成员访问super关键字子类构造方法super和this初始化protected关键字继承方式final关键字继承与组合一、继承的概念 继承(inheritance)机制:是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类…...

Java——单词接龙

题目链接 leetcode在线oj题——单词接龙 题目描述 字典 wordList 中从单词 beginWord 和 endWord 的 转换序列 是一个按下述规格形成的序列 beginWord -> s1 -> s2 -> … -> sk&#xff1a; 每一对相邻的单词只差一个字母。 对于 1 < i < k 时&#xff…...

HTML DOM 事件监听器

通过JavaScript&#xff0c;我们可以给页面的某些元素添加事件的监听器&#xff0c;当元素触发相应事件的时候监听器就会捕捉到这个事件并执行相应的代码。addEventListener() 方法实例当用户点击按钮时触发监听事件&#xff1a;document.getElementById("myBtn").ad…...

java基本数据类型取值范围

在JAVA中一共有八种基本数据类型&#xff0c;他们分别是 byte、short、int、long、float、double、char、boolean 整型 其中byte、short、int、long都是表示整数的&#xff0c;只不过他们的取值范围不一样 byte的取值范围为-128~127&#xff0c;占用1个字节&#xff08;-2的…...

maven的安装配置

目录 1. Maven的安装配置 1.1检测jdk的版本 1.2下载maven 1.3配置maven环境变量 2.认识maven的目录结构 2.1 创建一个文件夹作为项目的根目录 1.创建如下结构的目录 2. 在pom.xml文件中写入如下内容(不用记忆) 3.在mian-->java--》下边创建java文件​编辑 4.cmd下…...

【转载】System Verilog 上下文context的含义以及设置导入函数的作用域

放丢失&#xff0c;转载一下&#xff0c;原文&#xff1a;https://blog.csdn.net/qq_31348733/article/details/1010546251. 上下文(context)的含义导入函数的上下文是该函数定义所在的位置&#xff0c;比如$unit 、模块、program或者package作用域(scope)&#xff0c;这一点跟…...

redis数据类型

Redis 数据类型 redis无论什么数据类型&#xff0c;在数据库中都是以key-value形式保存&#xff0c;并且所有的key(键)都是字符串&#xff0c;所以讨论基础数据结构都是讨论的value值的数据类型 1. 字符串操作 set key value [ex seconds] [px milliseconds] [nx|xx] 设置ke…...

【独家】华为OD机试 - 最多获得的短信条数(C 语言解题)

最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南)华为od机试,独家整理 已参加机试人员的实战技巧文章目录 最近更新的博客使用说明本期…...

【剧前爆米花--爪哇岛寻宝】包装类的装拆箱和泛型的擦除机制

作者&#xff1a;困了电视剧 专栏&#xff1a;《数据结构--Java》 文章分布&#xff1a;这是关于数据结构的基础之一泛型的文章&#xff0c;希望对你有所帮助。 目录 包装类 装箱 装箱源码小细节 拆箱 泛型 什么是泛型 泛型编译的擦除机制 不能实例化泛型类型数组 包装…...

BufferQueue研究

我们在工作的过程中&#xff0c;肯定听过分析卡顿或者冻屏问题的时候&#xff0c;定位到APP卡在dequeueBuffer方法里面&#xff0c;或者也听身边的同事老说3Buffer等信息。所以3Buffer是什么鬼&#xff1f;什么是BufferQueue?搞Android&#xff0c;你一定知道Graphic Buffer和…...

【计组笔记08】计算机组成与原理之IO设备系统(输入、输出设备、外存储器)

这篇文章,主要介绍计算机组成与原理之IO设备系统(输入、输出设备、外存储器)。 目录 一、IO设备系统 1.1、IO系统的演变 (1)早期阶段 (2)接口模块和DMA阶段...

使用Vue实现数据可视化大屏功能(一)

导语   现在在很多的工程项目中&#xff0c;都有有关于数据大屏相关的监控内容&#xff0c;这里我们就来看一下如何用Vue来搭建一个数据可视化大屏应用。 创建项目 使用WebStorm工具创建一个Vue的项目。如下图所示&#xff0c;配置好vue的脚手架工具和nodejs的运行环境&#…...

华为OD机试真题Python实现【整数对最小和】真题+解题思路+代码(20222023)

整数对最小和 题目 给定两个整数数组 array1 array2 数组元素按升序排列 假设从array1 array2中分别取出一个元素可构成一对元素 现在需要取出K个元素 并对取出的所有元素求和 计算和的最小值 注意: 两对元素如果对应于array1 array2中的两个下标均相同,则视为同一个元素 �…...

2023年绿色建筑国际会议(ICoGB 2023)

2023年绿色建筑国际会议&#xff08;ICoGB 2023&#xff09; 重要信息 会议网址&#xff1a;www.icogb.org 会议时间&#xff1a;2023年5月19-21日 召开地点&#xff1a;斯德哥尔摩 截稿时间&#xff1a;2023年4月1日 录用通知&#xff1a;投稿后2周内 收录检索&#xff…...

【力扣1653】使字符串平衡的最少删除次数

给你一个字符串 s &#xff0c;它仅包含字符 a 和 b​​​​ 。你可以删除 s 中任意数目的字符&#xff0c;使得 s 平衡 。当不存在下标对 (i,j) 满足 i < j &#xff0c;且 s[i] b 的同时 s[j] a &#xff0c;此时认为 s 是 平衡 的。请你返回使 s 平衡 的 最少 删除次数。…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

unix/linux,sudo,其发展历程详细时间线、由来、历史背景

sudo 的诞生和演化,本身就是一部 Unix/Linux 系统管理哲学变迁的微缩史。来,让我们拨开时间的迷雾,一同探寻 sudo 那波澜壮阔(也颇为实用主义)的发展历程。 历史背景:su的时代与困境 ( 20 世纪 70 年代 - 80 年代初) 在 sudo 出现之前,Unix 系统管理员和需要特权操作的…...

12.找到字符串中所有字母异位词

&#x1f9e0; 题目解析 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找出 s 中所有 p 的字母异位词的起始索引。 返回的答案以数组形式表示。 字母异位词定义&#xff1a; 若两个字符串包含的字符种类和出现次数完全相同&#xff0c;顺序无所谓&#xff0c;则互为…...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题

【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要&#xff1a; 近期&#xff0c;在使用较新版本的OpenSSH客户端连接老旧SSH服务器时&#xff0c;会遇到 "no matching key exchange method found"​, "n…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目&#xff0c;该项目是一个 Spring AI 快速入门的样例工程项目&#xff0c;旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计&#xff0c;每个模块都专注于特定的功能领域&#xff0c;便于学习和…...