OSPF 动态路由协议(思科、华为)

#交换设备在这里插入图片描述

OSPF 动态路由协议

一、基本概念

  • 1.中文翻译:开放式最短路径优先路由协议(open shortest path first),是一个内部网关路由协议(一个自治系统内)
  • 2.也称为:链路状态路由协议:在单一区域内的路由器是向相邻路由器发送链路状态信息【包含接口IP地址和子网掩码、网络类型、该链路开销】,网络收敛后形成网络拓扑
    • 链路状态信息:自己在网络中的位置,自己与谁相连
  • 3.工作过程
    • 相邻的路由器首先建立邻居关系
    • 根据链路状态信息,形成对应的链路状态数据库
    • 根据OSPF自己的算法,进行最短路径树的计算
    • 最终形成路由表

与rip的区别

  • rip–只告诉自己的邻居,告诉的内容是自己数据库中最新的所有路由信息周期性的反反复复
  • OSPF–向所有设备广播,内容只包括自己周围有哪些直连网段,只广播1次

在RIP 协议中, 路由器会将自己所知道的关于整个网络的路由信息周期性地发送给所有的邻居路由器

在OSPF协议中, 路由器会将自己的链路状态信息一次性地泛洪( Flooding ) 给所有其他的路由器。

RIP 协议是以UDP 作为其传输层协议的, RIP 报文是封装在UDP 报文中的。OSPF没有传输层协议, OSPF 报文是直接封装在IP 报文中的。我们知道, UDP 通信或IP 通信都是一种无连接、不可靠的通信方式。RIP 也好, OSPF 也罢, 其协议报文传输的可靠性机制都是由协议本身提供的。

rip只适合小型网络中,而ospf适用于任何规模的网络

二、OSPF区域

1.划分区域

  • 为了适应大型网络,将很多路由器划分若干个区域,更快速的实现网络收敛
  • 每个OSPF的路由器只维护自己所在区域的链路状态信息,只在自己的小区域进行收敛
  • 每个区域都有区域ID
    • 可以表示为一个10进制数
    • 或者表示为一个IP地址
  • 有些路由器两端连接两个不同的区域,这样就需要注意了

2.骨干区域

  • 负责区域之间的路由信息传递,区域之间的通信都要经过它
  • 维护OSPF自治系统内所有的路由信息
  • 区域ID:0 或者 0.0.0.0
  • 默认情况下,所有的非骨干区域都和骨干区域直连
    • 如果是环形相连呢?
      • 虚链路技术

3.非骨干区域

  • 普通区域
  • 维护本区域内的路由信息

三、OSPF单区域

  • DR和BDR只是路由器的某个接口的属性,而不是路由器本身的属性,是通过OSPF规定的选举过程而定的,同一个路由器在不同的网络部署中,都有可能被选举为DR和BDR

2.OSPF的度量值

  • cost值
    • 基于链路带宽来决定
      • 100mbps 是 1
      • 10mbps 是 10

3,邻接关系的建立

  • 以什么方式发送数据报文
    • 组播方式
      • 组播地址
        • 224.0.0.5 代表所有OSPF路由器
          • 当未选举出DR和BDR时,采用此方式向所有的OSPF路由器发送数据报
        • 224.0.0.6 代表DR和BDR
          • 当选举出DR和BDR后,DR和BDR就采用该组播地址,将汇总后的链路状态信息发给其他所有的路由器
  • 报文类型
    • hello报文:初始状态下发出,里面携带routeID信息,用于发现和维持邻居关系、选举DR和BDR
    • 数据库描述包(DBD):向邻居发送自己的链路状态描述信息,用来同步链路状态数据库
    • 链路状态请求包(LSR):请求对方有的,自己却没有的链路状态
    • 链路状态更新包(LSU)
    • 链路状态确认包(LSACK)
    • 在这里插入图片描述

4,OSPF和RIP对比

  • RIP:
    • RIPv1:不支持可变长子网掩码。使用广播更新
    • RIPv2:使用组播更新
    • 跳数限制:15跳
    • 不能划分区域,网路收敛慢
  • OSPF:
    • 使用组播更新
    • 网路收敛快:通过区域划分
    • 支持可变长子网掩码,主要体现在宣告时携带子网掩码

5、配置

在这里插入图片描述

1.配置命令
en 
conf t
router ospf 10    #10代表OSPF进程![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/1e6a1ec09cd5415ebbe2d994cec46a3e.bmp)network 192.168.10.0 0.0.0.255 area 0   #宣告宣告网段      网段子网反码   OSPF区域  本实验只设置一个区域0
network 10.10.10.0 0.0.0.3 area 0
2,查看命令
show ip ospf                 #查看OSPF配置信息show ip ospf neighbor         #查看邻接关系
在R2上执行上述语句 系统反馈:
Neighbor ID     Pri   State           Dead Time   Address         Interface
192.168.20.254    1   FULL/BDR        00:00:34    20.20.20.2      FastEthernet1/0
192.168.10.254    1   FULL/DR         00:00:32    10.10.10.1      FastEthernet0/0
此时R1为DR

6.华为路由器配置OSPF单区域

  • 进入OSPF视图–设置区域–宣告直连网段(IP + 反掩码)
<R1>sys
[R1]ospf 1
[R1-ospf-1]area 0
[R1-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 172.16.10.0 0.0.0.255
[R1-ospf-1-area-0.0.0.0]network 172.16.20.0 0.0.0.255
  • 查看OSPF接口通过是否正确 dis ospf interface

在这里插入图片描述

  • 查看OSPF邻居状态dis ospf peer

在这里插入图片描述

  • 查看OSPF路由表dis ip routing-table protocol ospf

在这里插入图片描述

  • 通过dis ospf[ospf编号] routing查看路由器的ospf路由表

在这里插入图片描述

截止这一步,主机之间就可以通信了

四、DR和BDR

DR(Designated Router,指定路由器)和BDR(Backup Designated Router,备份指定路由器)是两个关键的概念,它们主要用于OSPF的多路访问网络(如以太网)中,目的是减少网络中的路由信息交换和计算量。

1.DR(指定路由器)

DR是在OSPF网络的多路访问段(比如广播或NBMA网络)中选举出来的路由器,用于减少网络的通告和更新。在这个段上的所有OSPF路由器将它们的信息发送给DR,DR负责将这些信息汇总后,再发送给其他所有路由器。这样,每个路由器就不需要与段上的每一个邻居都进行信息交换,而只需要与DR交换即可,大大减少了因为路由信息交换引起的网络带宽消耗。

2.BDR(备份指定路由器)

BDR是在同一OSPF网络段中作为DR的后备而选举出来的。它与DR接收相同的路由信息,并时刻准备在DR出现故障时接管其职责,成为新的DR,以此来确保网络的稳定性和可靠性。在正常情况下,BDR并不向所有路由器发送信息,但它会与所有路由器保持状态信息的同步,并准备随时接管DR的角色。

3.选举过程

DR和BDR的选举是根据OSPF优先级(Router Priority)来决定的,路由器接口配置的优先级数值越高,路由器成为DR或BDR的可能性就越大。如果优先级相同,则查看路由器的OSPF路由器ID(Router ID),路由器ID数值较大的路由器将获得DR或BDR的资格。选举过程在网络刚刚启动时进行,之后只有在DR或BDR发生变化时才会重新进行选举。

在配置OSPF时,管理员可以手动设置路由器接口的优先级,以影响DR和BDR的选举。如果不希望某个路由器成为DR或BDR,可以将其优先级设置为0。

DR和BDR的选举只在 广播网段 或 NBMA网段中进行,在点对多点网络(P2MP)中不进行选举,该选举是针对路由器接口而言的,一个路由器上,可能同时存在DR和BDR

  • 拓展知识:P2MP

    • “点对多点”(Point-to-Multipoint,简称P2MP)是一种网络拓扑结构,它描述了一种通信模式,其中单个发送节点(点)与多个接收节点(多点)进行通信。在这种网络类型中,一个中心节点(通常称为集线器或中心站)与多个外围节点(通常称为端点或叶节点)相连,形成星型或树型结构。

      在点对多点网络中,中心节点负责将数据分发到所有连接的外围节点。这种网络结构在无线通信、宽带接入、视频监控系统等领域非常常见。例如,在无线网络中,一个基站可以与多个无线客户端通信;在有线网络中,一个中心路由器或交换机可以连接多个终端设备。

      点对多点网络的特点包括:

      1. 单向或双向通信:根据应用需求,点对多点网络可以是单向的(如广播电视)或双向的(如无线互联网接入)。

      2. 集中式管理:中心节点通常负责网络的管理和控制,包括数据的分发、路由和错误处理。

      3. 易于扩展:添加新的外围节点通常比较简单,只需在中心节点进行配置即可。

      4. 资源共享:中心节点共享其资源(如带宽)给所有外围节点,这可能导致在高峰时段资源分配不均。

      5. 可靠性问题:如果中心节点发生故障,整个网络可能会受到影响。

      点对多点网络在实现上可以是基于有线或无线的技术。例如,在无线通信中,WiMAX(Worldwide Interoperability for Microwave Access)技术支持点对多点连接,允许一个基站服务多个用户。在有线网络中,如以太网,通过使用集线器或交换机,也可以实现点对多点的连接。

      这种网络类型适用于需要将数据或服务从一个中心点分发到多个终端的应用场景,尤其是在需要覆盖广泛区域且终端数量较多的情况下。

  • 在同一个区域之中通过选举DR和BDR来节省网络中的流量
    • 区域中的其他路由器只会和DR、BDR建立邻接关系
      • 邻接关系是指:建立之后,通过该关系进行链路状态的交换,而不是物理上用网线连接的关系,用网线连接的两个设备,不一定就会建立邻接关系
  • DR和BDR的选举 ^cd6de4
    • 通过route ID进行选举,最大的为DR,第二大的作为BDR
    • 如果是全网形的结构,只有一个DR
    • route ID 有关Router-ID的相关知识详见Router-ID
      • 首先选取路由器loopback上数值最高的地址
        • loopback:本地回环接口
        • 是路由器上的虚拟接口,是可以收发路由协议报文,也可以配置IP
      • loopback上没有配置地址,选取物理接口上最大的IP地址
      • 也可以直接使用命令router-id直接指定

4.手动干预选举(华为

  • 在默认情况下,网络中所有路由器的DR优先级都是1,则系统会根据路由器的Router-ID值的大小来选举DR和BDR
  • 通过手动更改DR优先级,可以实现指定某个路由器为DR或BDR,⭐️注意配置过后需要同时重启网络中的所有路由器或重启所有路由器的OSPF进程
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ospf dr-priority 100

五、OSPF多区域

  • 如果网络的规模不断扩大,如果继续使用OSPF单区域设置,会导致单个路由器上的链路状态数据库非常庞大,导致路由器负担过重,不便于维护管理。为了解决这个问题,OSPF提供了多区域的解决方案,链路状态的泛洪只会在单个区域内,区域之间传递的知识路由条目【由边界路由器负责ABR】,而不是链路状态
  • 为了使得网络中不产生环路,所有非骨干区域的之间传递路由信息,必须经过骨干区域【area0】,就是说,非骨干区域之间不可以直接进行路由信息的交互

链路状态数据库

每台路由器将所有接收到的LSA以及自己产生的LSA集中在一起,便得到了一个数据库,称为链路状态数据库LSDB(link-state database),在单区域的OSPF中,所有路由器的LSDB都是完全一样的,LSDB相当于一张关于本区域的详细地图

  • 在建立LSDB后,路由器会根据“最短路径树算法SPF”(shortest path first algorithm)作用于LSDB,从而形成一个属于自己的最短路径树(shortest path tree)SPT,这样,这台路由器就知道了去往本区域任何一台路由器的最优路径

1.概念

1.目的
  • 实现大型网络环境
  • 划分区域后实现单区域的网路收敛,网络收敛块
2.好处
  • 改善网络,根据有拓展性
  • 快速收敛
  • 减少路由表,减少了LSU的流量
3.OSPF的通信流量
  • 在区域内(域内通信量)
    • 选举DR和BDR
    • 内部路由器之间的通信
  • 不同区域之间(域间通信量)
    • ABR(区域边界路由器)
  • 与其他自治系统(外部通信量)
    • ASBR(自治系统边界路由器)
      在这里插入图片描述
4.区域
  • 骨干区域
    • area 0,一般用骨干区域连接外部AS
      • 有1~5类型的链路状态通告
  • 非骨干区域
    • 标准区域
      • 含有类型1,2,3的链路状态通告
    • 末梢区域:area 1
    • 完全末梢,最末端
    • 非纯末梢,是本自治系统的末梢,但是还连接着外部区域
5.6种链路状态通告(LSA)
  • 1.路由器的LSA: 由区域内的路由器(内部路由器)发出

  • 2.网络LSA: 由区域内的DR和BDR发出

  • 3.网络汇总LSA: 由ABR发出,将整个区域的链路状态信息进行汇总,为其他区域进行发送,从而使其他区域的路由器学习到了该区域的链路状态

  • 4.ASBR汇总LSA: 由ABR发给ASBR,ABR(区域边界路由器)将单区域的链路状态信息发给ASBR(自治系统边界路由器)进行汇总,从而ASBR学习到了整个自治系统的链路状态

  • 5.AS外部LSA: 由ASBR发出,它将整个OSPF自治系统的链路状态进行汇总,通告外部AS

  • 7.非纯末梢区域的外部LSA:NSSA,此区域含有ASBR

类型LSA名称传播范围通告者link-id描述及携带信息补充
1路由器LSA(Router LSA)本地设备所在区域该区域内所有路由器的RID通告者的RID每台OSPF路由器都会产生的LSA,本地所在区域的直连拓扑,优化网络(减少LSA的更新)时不可被删除路由器LSA描述了路由器接口的IP地址、子网掩码、接口类型(如点对点、广播等)和到该接口的度量成本(如开销值)。每个接口最多只能产生一个路由器LSA。
2** 网络LSA(Network LSA)**本地设备所在区域DR(每个MA网络中的DR)DR的接口IP地址描述的是该MA网络中所有已经形成邻接的路由器(包括DR),也就是指单个MA网络中的拓扑如果一个接口连接到一个广播网络,路由器会生成一个网络LSA来表示该广播网络。这个LSA包含了所有连接到该广播网络的路由器的IP地址列表。
3汇总网络LSA(Network Summary LSA)整个OSPF域ABR(在经过下一台ABR时,修改为新的ABR的RID)域间路由的目标网络号描述的是所要达到某个区域的目标网段的路由,也就是域间路由这种LSA用于描述到一个较大网络的路由信息,它包含了汇总后的网络地址和掩码,以及到达该网络的总开销。
4ASBR汇总LSA(ASBR Summary LSA)除了ASBR所在区域的整个OSPF域(ASBR所在区域是基于1类LSA交代的位置)ABR(和ASBR同一区域的ABR,在经过下一台ABR时,修改为新的ABR的RID)ASBR的RID描述的是达到ASBR的主机路由,也就是ASBR位置当一个路由器连接到自治系统边界路由器(ASBR)并且需要向其他区域通告到达ASBR的路由信息时,它将生成ASBR汇总LSA。这种LSA描述了到达ASBR的网络地址和掩码,以及到达ASBR的总开销。
5AS 外部 LSA(AS External LSA)整个OSPF域ASBR域外路由的目标网络号描述的是本AS之外的路由信息当一个路由器需要将到达外部网络的路由信息通告给OSPF域内的其他路由器时,它将生成外部LSA。这种LSA包含了到达外部网络的网络地址、掩码和下一跳路由器的IP地址。
7** 非完全末梢区域 LSA(NSSA LSA)**本地的NSSA区域ASBR域外路由的目标网络号描述的还是本AS之外的路由信息。注意的是该LSA不能直接进入骨干区域,而是需要NSSA区域的ABR将其转换成5类的LSA才能注入骨干区域。在通知其他区域关于到外部网络的路由信息时,如果一个区域被配置为不可汇总区域(NSSA),则使用这种LSA类型。它基本上与外部LSA类似,但是具有一些特殊的标记,以表明它来自NSSA区域。

2.cisco设备多区域

在这里插入图片描述

路由器0
en
conf t
rputer ospf 1
network 192.168.10.0 0.0.0.255 area 0   宣告时携带子网掩码(用的是反码)
路由器1
en
conf t
rputer ospf 1
network 192.168.10.0 0.0.0.255 area 0   #左右两个网段属于不同区域
network 192.168.20.0 0.0.0.255 area 1
路由器2
en
conf t
rputer ospf 1
network 192.168.20.0 0.0.0.255 area 1   

最后

路由器0
show ip route
……192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.10.0/24 is directly connected, GigabitEthernet0/0
L       192.168.10.1/32 is directly connected, GigabitEthernet0/0
O IA 192.168.20.0/24 [110/2] via 192.168.10.2, 00:01:10, GigabitEthernet0/0
# O IA 表示从外部区域内学习到的路由条目

3.华为设备多区域设置

设置步骤:

  • 正确设置接口IP地址
  • 正确设置区域
    • ospf
    • area
    • network
示例
[R4]ospf 1
[R4-ospf-1]area 2
[R4-ospf-1-area-0.0.0.2]net 10.0.46.0 0.0.0.255

六、OSPF末梢区域

(一)概念

  • 只有一个默认路由作为该区域的出口
  • 该区域不能作为虚链路的穿越区域
  • 末梢区域没有自治系统边界路由器ASBR
  • 不是骨干区域0

(二)特征

  • 末梢区域没有链路状态通告4、5、7

  • 完全末梢区域里面除了一条默认路由外,没有LSA 3、4、5、7,只有1和2

    • 就是说,只要配置了末梢区域,就会生成一条默认路由,从外部指向内部
    • 因为这里是末梢,它只和区域内部的路由器相连,所以如果有外网连接到这里,通过默认路由,就可以访问内部,因为没有其他路可以走
  • 末梢区域和完全末梢区域的目的:

    • 减少区域内的链路状态通告

在这里插入图片描述

各路由器设置好IP地址后

路由器1、2、3需要设置area 0 为末梢区域

路由器1
conf t
router ospf 1
area 2 stub       #设置区域2为末梢区域
路由器2、3相同此时路由器2、3系统提示(只展示2的)
……
o    192.168.10.0/24 后面忘了   #这里是由于路由器1发送了 路由汇总 通告,使得路由器2学习到的10.0网段
O    192.168.30.0/24 [110/2] via 192.168.40.1, 00:09:03, GigabitEthernet0/0#这是学习到的内部路由条目,因为有两种链路状态通告还在运行(LSA1和2)192.168.40.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.40.0/24 is directly connected, GigabitEthernet0/0
L       192.168.40.2/32 is directly connected, GigabitEthernet0/0
O*IA 0.0.0.0/0 [110/2] via 192.168.40.1, 00:09:03, GigabitEthernet0/0  生成了一个默认路由
因为在末梢区域内的所有设备想要访问外网,只有一条路能出去,所以不需要学习其他路由器的链路状态信息如果设置
area 2 stub no-sunnary  #关闭路由汇总(使ABR不汇总末梢区域的链路状态信息)这里就没有10.0网段的条目了▲
O    192.168.30.0/24 [110/2] via 192.168.40.1, 00:09:03, GigabitEthernet0/0#这是学习到的内部路由条目,因为有两种链路状态通告还在运行(LSA1和2)192.168.40.0/24 is variably subnetted, 2 subnets, 2 masks
C       192.168.40.0/24 is directly connected, GigabitEthernet0/0
L       192.168.40.2/32 is directly connected, GigabitEthernet0/0
O*IA 0.0.0.0/0 [110/2] via 192.168.40.1, 00:09:03, GigabitEthernet0/0 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VirtualBox 安装UOS统信服务器操作系统

1、准备 1.1安装VirtualBox 由于过程简单&#xff0c;不做赘述&#xff01; 1.2下载UOS服务器版本 下载免费版本即可 服务器与云计算操作系统-统信软件 (uniontech.com)https://uniontech.com/os-serverCloud.html 2、安装 2.1新建虚拟机 2.2选择虚拟机模式&#xff0c;这…

船舶行业信息安全解决方案介绍

船舶行业信息安全背景&#xff1a; 近年来随着经济复苏、疫情与国际形势影响国内外船舶海运业务蓬勃发展&#xff0c;在业务量激增的背景下出现多类信息安全事件。其中2017年&#xff0c;马士基集团遭到勒索软件攻击&#xff0c;内部业务系统和码头操作系统均受到严重影响&…

spring注解驱动系列-- spring容器创建原理

从源码开始探究spring容器的创建原理&#xff0c;下面是源码总步骤 Override public void refresh() throws BeansException, IllegalStateException {synchronized (this.startupShutdownMonitor) {// Prepare this context for refreshing.prepareRefresh();// Tell the subc…

利用反向代理编写HTTP抓包工具——可视化界面

手写HTTP抓包工具——可视化界面 项目描述语言golang可视化fynev2功能代理抓包、重发、记录 目录 1. 示例1.1 主界面1.2 开启反向代理1.3 抓包1.4 历史记录1.5 重发 2. 核心代码2.1 GUI2.1 抓包 3. 结语3.1 传送门 1. 示例 1.1 主界面 1.2 开启反向代理 1.3 抓包 1.4 历史记录…

两行css 实现瀑布流

html <ul ><li><a href"" ><img src"05094532gc6w.jpg" alt"111" /><p>传奇</p></a></li><li><a href"" ><img src"05094532gc6w.jpg" alt"111"…

汽车EDI:波森Boysen EDI项目案例

企业A作为Boysen 的供应商&#xff0c;为了响应Boysen的号召&#xff0c;需要与其实现EDI对接。由于企业A此前并没有EDI项目的实施经验&#xff0c;对EDI项目的实施流程、技术要求等内容不知道应该从何下手。 为了实现EDI对接意味着企业A需要具备自己的EDI系统&#xff0c;从而…

佑友FHQ backup 后台任意文件读取漏洞复现

0x01 产品简介 佑友FHQ是一款专业的网络安全设备,用于保护企业网络免受各种网络威胁和攻击。其功能包括流量过滤、入侵检测与阻断、应用程序控制、虚拟专用网络(VPN)支持等。通过深度包检测和实时流量分析,佑友防火墙能够及时识别和阻止潜在的威胁,提供全面的安全保护。同…

vue中axios从content-disposition响应头获取中文名

在Vue中使用axios请求文件时&#xff0c;服务器可能会返回带有Content-Disposition响应头的文件&#xff0c;其中可能包含文件名的编码信息。如果你需要解码这个文件名&#xff0c;可以使用JavaScript的内置URL API来处理。 Java中用于设置HTTP响应头的&#xff0c;通常在Web开…

浏览器开发公司Brave 将自己的搜索结果与其 Leo AI 助手集成

Brave Software是一家开发浏览器的公司&#xff0c;其主要产品是Brave浏览器。Brave浏览器基于Chromium项目开发&#xff0c;具有高性能和隐私保护的特点。此外&#xff0c;Brave浏览器还提供了“off record”模式&#xff0c;允许用户在不记录浏览历史的情况下使用浏览器。关于…

C# Secs源码 HsmsSecs测试

包含客户端和服务端 启动客户端和服务端即可互相模拟sece 通讯 也可使用secs仿真器进行测试 开启后进行相关操作&#xff0c;创建客户端连接仿真器进行操作 仿真器显示日志 相关文件&#xff0c;源码 4.9 私信即可或者看我博客描述那个地址 我是狗子&#xff0c;希望你幸…

广东工业大学领导一行莅临泰迪智能科技参观交流

6月13日&#xff0c;广东工业大学经济学院党委书记林伟英、经济学院党委副书记陈朝阳、党政办主任徐嘉靖、数学与统计学院徐圣兵莅临泰迪智能科技产教融合实训中心参观交流。泰迪智能科技董事长张良均、运营中心总监翁梦婷、校企合作经理吴桂锋进行了热情接待。 会上&#xff0…

JAVA小知识22:迭代器iterator与列表迭代器ListIterator

一、迭代器 在 Java 中&#xff0c;迭代器是一个设计模式&#xff0c;用于遍历集合中的元素。Java 提供了 Iterator 接口来实现这一功能。迭代器的主要作用是提供一种通用的遍历集合的方法&#xff0c;而不需要了解集合的具体实现细节。 1.1、迭代器的特点 统一接口&#xf…

性能测试、负载测试、压力测试、稳定性测试简单区分【超详细】

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 性能测试是一个总称&#xff0c;可细分为性能测试、负载测试、压力测试、稳定性测试。 性能测试…

超级微同城小程序源码系统 帮你轻松制作本地生活服务平台 带源码包+搭建部署教程

系统概述 "超级微同城小程序源码系统"基于主流的小程序开发框架&#xff0c;采用高效稳定的后端架构设计&#xff0c;旨在为用户提供一个包含信息发布、在线交易、社交互动等功能于一体的综合型本地生活服务平台。系统涵盖了餐饮外卖、生鲜配送、家政服务、二手交易…

入门机器视觉的正确打开方式——徒手撸一个python+opencv实现的机器视觉简易调试工具(上)

目录 1.引言2.框架思路3.环境搭建4.图像处理流程化的实现5.流水线上的算法块5.1 算法块的可视化 6.总结7.调试工具成品链接PS.扩展阅读ps1.六自由度机器人相关文章资源ps2.四轴机器相关文章资源ps3.移动小车相关文章资源 1.引言 在当今AI时代&#xff0c;关于视觉识别似乎已被…

数据可视化:Seaborn

安装Seaborn 进入虚拟环境&#xff0c;在终端中键入 pip install seaborn 即可安装。 初步使用Seaborn 在使用seaborn之前&#xff0c;我们先了解一下seaborn是什么&#xff0c;seaborn是以matplotlib为底层的更简便的python第三方库&#xff0c;它可以更快捷地去设置图形的一…

关于el-date-picker组件,如何隐藏时间组件底部清空按钮

工作中可能会遇到el-date-picker组件隐藏时间组件底部清空按钮 分为两种 &#xff1a; 如果你想要实现全部的el-date-picker的清空隐藏 和 某一个页面的el-date-picker的清空隐藏 1 全局隐藏 步骤1&#xff1a;在element-ui.scss中添加如下代码&#xff1a; .el-picker-pane…

在VS Code中快速生成Vue模板的技巧

配置vue.json: { "Print to console": {"prefix": "vue","body": ["<template>"," <div class\"\">\n"," </div>","</template>\n","<scri…

操作系统入门 -- CPU调度算法

操作系统入门 – CPU调度算法 在了解完进程和线程的概念后&#xff0c;我们就需要了解当一个进程就绪后系统会进行怎样的资源分配并运行进程&#xff0c;因此我们就需要了解CPU的调度算法 1.CPU调度 1.1概念 CPU调度即按照某种算法将CPU资源分配给某个就绪的进程。 1.2调度…

大模型应用开发技术:Multi-Agent框架流程、源码及案例实战(二)

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;一&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;二&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;三&#xff09; 基于 LlaMA…