路由 OSPF LSA介绍、1~7类LSA详细介绍

news2025/1/14 18:26:02

1.0.0 路由 OSPF LSA介绍、1~7类LSA详细介绍

OSPF LSA 链路状态通告( Link status announcement),作用于 向其它邻接OSPF路由器 传递拓扑信息路由信息

LSA如何去描述拓扑信息与路由信息的呢?

其实是基于不同类型LSA进行描述,而常见的LSA类型有1类、2类、3类、4类、5类、7类

OSPF路由器通过不同类型的LSA组建成一下LSDB数据库(链路状态数据库)再通过SPF算法进行计算出最优的OSPF路由加入到路由表中。


宏观下的6种LSA作用:

1类 Router

  • 路由器LSA,描述设备的直连拓扑信息、路由信息。
  • 该LSA只能在接口所属的区域内泛洪。
    • 解释(接口所属的区域):在OSPF中以接口划分区域,故每个接口都可以属于不同的区域。
    • 1类LSA只会在区域内泛洪/传递,不会泛洪到其它区域中。
      在这里插入图片描述

2类 Network

  • 网络LSA,该2类LSA只会在广播类型网络中出现。
  • 由DR产生,描述DR所在的MA网络中所有与之形成邻接关系的路由器,以及DR自己。
    • 解释(所有与之形成邻接关系的路由器):
      • 在广播类型的网络中,OSPF会选举出DR设备统一管理广播网络中的LSA。
      • 而广播网络中只有DR与BDR能够与DR-other设备建立邻接关系。
      • 2类LSA描述的正是DR与其它设备之间的拓扑信息[DR连接了谁],与DR广播网络的路由信息[DR广播网络是什么]
  • 该LSA只能在接口所属区域泛洪。

在这里插入图片描述

3类 Summary-Network

  • 网络汇总LSA,由ABR设备产生,描述区域内的路由信息。
    • 因为1类、2类LSA只能在区域内传递。
    • 故其它区域需要学习到另一个区域的1类2类就需要有新的LSA来统一描述1类2类的拓扑、路由信息。这个LSA就是3类LSA。
      在这里插入图片描述

4类 ASBR-Summary

  • ASBR汇总LSA,由ABR产生,描述到ASBR的路由,服务于5类LSA。

  • 通告给除ASBR所在区域的其它区域。

  • 这里需要进行图形的解释:

    • 5类LSA在传递过程中下一跳是不可改变的,故AR5想访问AR1就需要去往AR2的2.2.2.2。

    • 1、首先AR2的router-id=2.2.2.2并没有发布到OSPF网络中,故AR5不会学习到去2.2.2.2的路由。

    • 2、由于AR3与AR2在同一个区域中,通过1类LSA就可以知道如何去2.2.2.2。

      • 【唉?不是说2.2.2.2是RID吗?不是没有发布到OSPF吗?AR3如何知道去2.2.2.2的呢?】

      • 【答案就是在1类LSA的子类型中可以得知去往RID的拓扑信息,往后会详细讲解1类LSA的其它子类型

      •   Type      : Router
          Ls id     : 2.2.2.2	【该LSA由谁产生?因为1类描述自己的直连接口信息,当然是自己】
          Adv rtr   : 2.2.2.2	【谁通告的?1类LSA由自己产生,当然是自己】
          Ls age    : 623 
          Len       : 36 
          Options   :  ASBR  E  
          seq#      : 80000007 
          chksum    : 0x2ec3
          Link count: 1
           * Link ID: 10.1.23.3【基于TransNet子类型可知该地址表示广播网络的DR地址】
             Data   : 10.1.23.2【谁通告的该LSA信息?基于该地址我们就知道如何去2.2.2.2了】
             Link Type: TransNet     
             Metric : 1
        该LSA由2.2.2.2通告过来给AR3的,其中产生了1条拓扑信息,可通过10.1.23.2访问到。
        故同样的也可以访问到2.2.2.2。
        
    • 3、由于1类只能在区域中传递,故AR5无法学习到去往2.2.2.2的路由信息。这个时候就需要用到ABR(AR3)发布的4类LSA(去2.2.2.2来找我AR3准没错了)

    在这里插入图片描述

5类 AS-External

  • AS外部LSA,由ASBR产生,描述到OSPF域外的路由。
  • OSPF引入的路由,如引入RIP、ISIS、BGP等路由,引入的路由就属于外部路。外部路由用5类LSA进行通告。
  • 5类LSA在传递的过程中,下一跳不会被中间设备修改。
    在这里插入图片描述

7类 NSSA

  • 用于特殊区域 NSSA 中的LSA。
  • 由ASBR产生,用于描述到达OSPF域外的路由。NSSA7类与5类功能一样,但泛洪范围不同。
  • NSSA7类只能在始发区域内泛洪,并不能直接进入Area0。当7类需要传递Area0的时候,ABR会将7类转换成5类传递入到Area0中。
    在这里插入图片描述

查看LSDB数据库

LSDB链路状态数据库,是存放各类LSA的地方,在路由设备上通过命令:display ospf lsdb 查看数据库信息。

Type表示LSA的类型(1类Router、2类Network、3类Sum-Net、4类 )

Linkstate通常表示谁产生的LSA

AdvRouter表示谁通告的LSA

Age表示LSA的年龄,也是老化时间。

Len为LSA的大小

Sequence为LSA序列号

Metric表示去往该LSA的开销。

<AR3>display ospf lsdb 

	 OSPF Process 1 with Router ID 3.3.3.3【OSPF路由设备的router-id】
		 Link State Database 【以下就是关于AR3的LSDB数据库信息】

		         Area: 0.0.0.0【区域0的LSA】
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    4.4.4.4         4.4.4.4           1240  36    80000005       1
 Router    3.3.3.3         3.3.3.3            834  36    80000005       1
 Network   10.1.34.4       4.4.4.4           1240  32    80000002       0
 Sum-Net   10.1.45.0       4.4.4.4           1277  28    80000001       1
 Sum-Net   10.1.23.0       3.3.3.3            834  28    80000002       1
 
		         Area: 0.0.0.1【区域1的LSA】
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 Router    2.2.2.2         2.2.2.2            585  36    80000007       1
 Router    3.3.3.3         3.3.3.3            785  36    80000005       1
 Network   10.1.23.3       3.3.3.3            785  32    80000001       0
 Sum-Net   10.1.45.0       3.3.3.3            834  28    80000001       2
 Sum-Net   10.1.34.0       3.3.3.3            834  28    80000001       1
 NSSA      0.0.0.0         3.3.3.3            834  36    80000001       1
 NSSA      10.1.23.0       2.2.2.2            585  36    80000002       1
 NSSA      192.168.1.0     2.2.2.2            585  36    80000002       1
 NSSA      10.1.12.0       2.2.2.2            585  36    80000002       1
 

		 AS External Database【外部路由的LSA】
 Type      LinkState ID    AdvRouter          Age  Len   Sequence   Metric
 External  192.168.1.0     3.3.3.3            584  36    80000002       1
 External  10.1.12.0       3.3.3.3            584  36    80000002       1

新旧LSA判断

话说网络中的LSA如此之多,OSPF路由器是如何进行判断哪些是新的LSA,哪些是旧的LSA呢?

对于LSA,有三个重要的字段。通过这三个字段可以判断出LSA的新旧:序列号seq校验chksum年龄Age

LSA优先区域顺序

1、先比较序列号,越大越新,越新越优先。

  • 因为OSPF最新生成的LSA会比旧的LSA序列号更大。

2、序列号一样,校验和越大越新。

  • OSPF报文中的校验和并不简简单单是用来判断报文有没有出错的,该值的计算不仅仅需要LSA报文的信息,还需要上一次计算出的校验和,并且每次计算校验和,都会比之前的校验和更大,因此校验和被认为是OSPF LSA消息新旧的第二个标准。

  • 红字部分借鉴CSDN博主「永远是少年啊」的原创文章:https://blog.csdn.net/weixin_40228200/article/details/118497166

3、特例就是当Age=3600时该LSA最优先,其它Age则是越小越优先。

  • Age表示LSA产生至今有多久了,默认从0开始。
  • 当OSPF设备需要删除某个LSA时,就会通过设置Age时间为3600秒进行泛洪,让其它OSPF设备进行删除指定LSA。所以LSA=3600比Age=0更具备优先级。
  • 但正常情况下Age是不会达到3600的,因为OSPF 默认情况下1800秒(30分钟)周期性更新一次LSA,当收到新的LSA之后就会进行刷新Age时间。

查看LSA的详细信息

通过命令:display ospf lsdb LSA类型 LSA条目ID,如查看2.2.2.2的1类LSA详细信息:display ospf lsdb router 2.2.2.2

<AR3>display ospf lsdb router 2.2.2.2

	 OSPF Process 1 with Router ID 3.3.3.3
		         Area: 0.0.0.0
		 Link State Database 

		         Area: 0.0.0.1【查询的1类LSA所属区域】
		 Link State Database 
  Type      : Router
  Ls id     : 2.2.2.2
  Adv rtr   : 2.2.2.2  
  Ls age    : 455 	【新旧LSA判断依据3】
  Len       : 36 
  Options   :  ASBR
  seq#      : 80000007 【新旧LSA判断依据1】
  chksum    : 0x4ca7   【新旧LSA判断依据2】
  Link count: 1
   * Link ID: 10.1.23.3    
     Data   : 10.1.23.2    
     Link Type: TransNet     
     Metric : 1

详细介绍1~7类LSA的内部信息

了解LSA的产生,什么情况下产生LSA,产生什么样的LSA。

查看并了解其LSA内部信息所表示的含义。

1类 Router

产生:运行了OSPF的设备并配置活动接口使用之后,必然会产生1条1类LSA描述该直连链路信息。

一类LSA头部信息

<AR4>display ospf lsdb router 4.4.4.4

  Type      : Router	【LSA的类型】
  Ls id     : 4.4.4.4	【该LSA由谁产生?因为1类描述自己的直连接口信息,当然是自己】
  Adv rtr   : 4.4.4.4	【谁通告的?1类LSA由自己产生,当然是自己】
  Ls age    : 1521		【该LSA活了多久?1521秒】
  Len       : 36		【LSA的大小,36Byte】
  Options   :  ABR  E	【ABR身份,E表示可接收OSPF外部LSA的能力】
  seq#      : 80000007 
  chksum    : 0xab1e
  Link count: 1			【直连链路信息数量】
   * Link ID: 10.1.34.4
     Data   : 10.1.34.4
     Link Type: TransNet【子类型】     
     Metric : 1

一类LSA子类型与内部信息

不同的子类型,其LinkID、Data所表示的含义也不同。

  • Link ID: 10.1.34.4【DR地址】
    Data : 10.1.34.4【宣告该LSA的接口】
    Link Type: TransNet【子类型】
    Metric : 1
Link TypeLink IDData
P2P(P2P接口网络中产生)邻居的RID宣告该LSA的路由器接口的IP地址
StubNet(广播网络中产生)路由器接口的网络IP地址该Stub网络的网络掩码
TransNet(广播网络中产生)DR的接口地址宣告该LSA的路由器接口的IP地址
Virtual(虚链路路由器产生)邻居的RID宣告该LSA的路由器接口的IP地址

P2P、TransNet、virtual三类都是一类LSA用于描述拓扑信息,StubNet则用于描述路由信息。

疑惑:为什么都是通过network 宣告网络,有时候产生的是1类的Transnet、有时候产生的是StubNet呢?

在这里插入图片描述

在这里插入图片描述


Vritual Link虚链路

为了避免区域间的环路,OSPF规定不允许直接在两个非骨干区域之间传递路由信息。

在这里插入图片描述

但是非骨干区域非骨干区域之间还是可以通过hello报文建立邻居关系,并学习到对方自己产生的路由

即:非骨干区域之间不能传递其它区域的路由,但是可以传递自己产生的路由。

在这里插入图片描述

1、建立Vlink的作用?

为了实现以上区域2与区域5之间的路由传递,让区域5也能学习到其它区域的路由信息,就需要建立Vlink虚链路。

Vlink实现非骨干区域之间能够交互路由信息的逻辑是什么?

因为非骨干区域与非骨干区域无法交互路由信息,只有非骨干区域与骨干区域之间可以。

基于上面的环境,AR4与AR5建立Vlink(区域0与区域2的两台边界路由器),实现逻辑上将骨干区域0扩展到AR5上。

建立完成之后就会和下图一样的:由于AR5逻辑上属于骨干区域,故区域5的AR10就会与AR5交互路由了。

在这里插入图片描述

2、如何配置Vlink?

首先观察环境,因为区域5与区域0之间相隔了区域2,需要做的就是将区域2打通,实现区域5与区域0的通信。

AR4是区域0与区域2的边界、AR5是区域2与区域5的边界,在这两台上配置Vlink是最优的。

配置Vlink的时候通常都是指定对端的router-id。

为什么虚链路不直接指定对端IP地址,而是指定对端的router-id呢?

  • 从实用性上看,如果单独指定其接口地址,那么这个时候去往目标时并不一定是最优的。

    而使用router-id,OSPF将会基于OSPF路由进行最优路由的转发。

  • 从可靠性上看,如果单独指定其接口地址,如果该接口断开了,那么该虚链路就断开了。

    而使用router-id,只要还有路由能到router-id该虚链路就不会断开。

在这里插入图片描述

3、配置Vlink的注意事项

  • Vlink虚链路只能在同区域建立连接,无法跨域建立虚链路。
    • 因为Vlink计算到达目标路径需要依靠1、2类LSA,而1、2类LSA无法跨区域传递,导致Vlink无法跨区域寻邻居。

以实验结果理解1类LSA

1、通过在AR2、AR3上查看lsdb可以知道1类的LSA只会在区域内传递(因为除了在区域1中可以看到1类的2.2.2.2,其它区域都不会有1类的2.2.2.2)

2、1类2.2.2.2中只有一条信息,也就是transnet子类型的LSA,表示的是AR2与AR3相连的拓扑信息(10.1.23.0)

3、其它区域想要学习到该1类的LSA,只能通过3类的LSA学习。(如:AR4需要学习区域1中的1类2.2.2.2的路由信息,只能通过AR3产生的3类学习到)

4、为什么AR4收到的3类是10.1.23.0呢为什么不是2.2.2.2?因为3类是统一汇总通告1类2类的拓扑信息、路由信息。故只会将1类2.2.2.2中的拓扑信息(10.1.23.0)通告出去。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2类 Network

产生:在广播类型的接口运行OSPF时,由选出的DR设备产生。

二类LSA头部信息与内部信息

<AR4>display ospf lsdb network 10.1.34.4

  Type      : Network
  Ls id     : 10.1.34.4【DR的地址】
  Adv rtr   : 4.4.4.4【该LSA由谁宣告的?】
  Ls age    : 1297
  Len       : 32 
  Options   :  E  
  seq#      : 80000001 
  chksum    : 0xf903
  Net mask  : 255.255.255.0【与LS id结合,表示DR所在的广播网络】
  Priority  : Low
     Attached Router    4.4.4.4【表示与DR相连的设备】
     Attached Router    3.3.3.3【表示与DR相连的设备】

通过上面的报文可以绘制一个逻辑拓扑

配合1类的LSA,我们就可以知道4.4.4.4与3.3.3.3互联接口为这个链路中的DR。以及这个链路连接有哪些设备。

在这里插入图片描述

3类 Sum-Network

产生:由ABR边界路由器产生

三类LSA头部信息与内部信息

<AR4>dis ospf lsdb summary 10.1.23.0

	 OSPF Process 1 with Router ID 4.4.4.4
		         Area: 0.0.0.0
		 Link State Database 


  Type      : Sum-Net
  Ls id     : 10.1.23.0【某条1类或2类的路由信息】
  Adv rtr   : 3.3.3.3 【下一跳找谁】
  Ls age    : 1557 
  Len       : 28 
  Options   :  E  
  seq#      : 80000002 
  chksum    : 0x8ca0
  Net mask  : 255.255.255.0【Lsid的掩码,与Lsid结合就知道了路由信息】
  Tos 0  metric: 1
  Priority  : Low

4类 ASBR-Summary

产生:由ABR边界路由器产生

4类LSA主要的作用就是通过头部的 Ls id与Adv rtr了解如何去往ASBR。

四类头部信息


<AR4>display ospf lsdb asbr 3.3.3.3

  Type      : Sum-Asbr
  Ls id     : 3.3.3.3【ASBR的router-id】
  Adv rtr   : 4.4.4.4【去往ASBR找我】
  Ls age    : 1716
  Len       : 28 
  Options   :  E  
  seq#      : 80000002 
  chksum    : 0x62db
  Tos 0  metric: 1

5类/7类 AS-External

产生:由ASBR区域自治边界路由器产生

5类与7类都是一样的LSA,只不过Type类型不一样。

五类头部信息与内部信息

<AR4>display ospf lsdb ase 192.168.1.0

	 OSPF Process 1 with Router ID 4.4.4.4
		 Link State Database


  Type      : External
  Ls id     : 192.168.1.0【5类外部路由】
  Adv rtr   : 3.3.3.3 【去往该路由的下一跳】
  Ls age    : 95 
  Len       : 36 
  Options   :  E  
  seq#      : 80000003 
  chksum    : 0xa68d
  Net mask  : 255.255.255.0【路由掩码】
  TOS 0  Metric: 1
  E type    : 2【外部路由开销的计算类型】
  Forwarding Address : 10.1.23.2 【转发地址】
  Tag       : 1 【Tag标签】
  Priority  : Low

五类LSA—E Type字段

External Type 外部路由类型

OSPF外部路由默认优先级为150

在这里插入图片描述

Type 1

可学习到外部的开销为:ASBR到外部路由部开销+本路由器到ASBR之间的路由部开销= 该外部路由的总开销

通过LSA可以知道访问192.168.1.0就需要经过3.3.3.3、2.2.2.2最终到192.168.1.0,故开销为3。

在这里插入图片描述

Type 2

5类LSA的外部路由开销为:(ASBR到外部路由的总开销

在这里插入图片描述

啥时候用Type1、啥时候用Type2?

当网络中有多个ASBR都引入同一条外部路由时,如果用默认的Type2方式引入,则去往该外部路由时必然是负载分担的。

如下图,AR14学习到的外部路由开销都是1,故AR14会认为该路由负载分担流量。

但很明显,走AR13是次优的路径,故在多个ASBR引入同一条外部路由的时候需要考虑使用Type1类型。

在这里插入图片描述

在这里插入图片描述

五类LSA—Forwarding字段

转发地址作用:解决广播型网络中OSPF路由次优路径问题

引入外部路由时,连接其他协议的接口运行了OSPF 协议并且网络类型为广播类型,则FA地址为重发布之前路由的下一跳地址,若网络类型为P2P,则不会产生FA地址。

转发地址不置位(0.0.0.0)
转发地址置位条件:

1.ASBR与外部路由交互的接口,启用了OSPF协议(即接口运行了OSPF协议,还运行了其它外部路由协议)

2.链接外部的接口不能配置Slient-interface(类似边缘端口,禁止设备向该接口发送OSPF报文)

3.只有广播型网络的接口才会置位,P2P只有单一的一条路无法置位。

环境介绍:

1、AR5的G0/0/0接口与AR7建立OSPF、并且G0/0/0还与AR6建立ISIS

2、路由引入操作:AR5将ISIS与OSPF进行双向的路由引入,即OSPF引入ISIS、ISIS引入OSPF中。

3、这个时候AR7就能通过AR5学习到AR6的ISIS相关路由,但是访问AR6的网络时会优先通过AR5进行中转,在该环境中明显是不合适的,因为AR7明显可以直接与AR6进行通信。

3、为此,OSPF的FA地址生效了。该环境满足了FA地址置位的要求。

4、AR5会将引入的AR6路由相关SLA的FA地址设置为去往AR6网络的下一跳接口地址(192.168.1.2),这样AR7需要访问AR6的时候就直接访问AR6即可。

在这里插入图片描述

五类LSA—Tag字段

用于区分路由,将特定的路由打上tag之后,可以通过路由策略选择性的接收和拒绝指定的路由。ISIS与路由策略相关知识在后面几章介绍到

双点双向引入时、环路就是通过tag解决的。

汇总1~7类相关查看命令

查看所有类型LSA的汇总信息,LSDB数据库

<AR4>display ospf lsdb 

查看指定类型的LSA

# 1类
<AR4>display ospf lsdb router
# 2类
<AR4>display ospf lsdb network
# 3类
<AR4>display ospf lsdb summary
# 4类
<AR4>display ospf lsdb asbr
# 5类
<AR4>display ospf lsdb ase
# 7类
<AR4>display ospf lsdb nssa
# 查看指定类型的LSA详细信息,如查看1类1.1.1.1的详细LSA信息
<AR4>display ospf lsdb router 1.1.1.1

查看ospf网络中哪些是ABR、ASBR

<AR3>dis ospf abr-asbr 

	 OSPF Process 1 with Router ID 3.3.3.3
		 Routing Table to ABR and ASBR 

 RtType      Destination       Area       Cost  Nexthop         Type
 Intra-area  4.4.4.4           0.0.0.0    1     10.1.34.4       ABR 
 Intra-area  5.5.5.5           0.0.0.0    2     10.1.34.4       ABR 
 Intra-area  2.2.2.2           0.0.0.1    1     10.1.23.2       ASBR 

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

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

相关文章

EquiBind模型源码分析

EquiBind模型源码分析 使用提供的模型权重来预测你自己的蛋白质配体对的结合结构 第 1 步:你需要什么作为输入 mol2或.sdf或.pdbqt或.pdb格式的配体文件&#xff0c;其名称包含字符串配体(配体文件应包含所有氢)。 .pdb格式的受体文件&#xff0c;其名称包含字符串protein。我…

leetcode.1819 序列中不同最大公约数的数目 - gcd + 枚举

1819. 序列中不同最大公约数的数目 目录 1、java版 2、c版 思路&#xff1a; 有n个元素的数组&#xff0c;则其子序列有 个&#xff0c;而1 ≤ n ≤ &#xff0c;则不可能枚举每一个子序列计算它的gcd&#xff0c;那样会tle我们可以逆转思路&#xff0c;因为1 ≤ nums[i]…

PhysioNet2017数据集介绍

一、数据集下载 PhysioNet2017为短单导联心电图记录的房颤分类数据集&#xff0c;下载地址如下&#xff1a;https://www.physionet.org/content/challenge-2017/1.0.0/ 二、数据集介绍 PhysioNet2017数据集主要用于对记录是否显示正常窦性心律、心房颤动&#xff08;AF&…

背包问题= =

一、01背包有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i件物品的体积是 vi&#xff0c;价值是 wi。求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。输出最大价值。&#xff08;下图是例子&#xff0c;一下…

14、ThingsBoard-自定义华为云SMS规则节点

1、概述 一个物联网平台承载着很多设备的连接,当设备出现异常的时候,能够快速的通知到运维管理员是非常重要的,thingsboard提供了自定义配置邮箱,但是它对支持发送短信的不是很友好,都是国外的sms服务商,我反正是不用那个,在国内常见就是阿里、腾讯、华为、七牛常用的s…

【Python百日进阶-数据分析】Day224 - plotly漏斗图px.funnel()

文章目录一、语法二、参数三、返回值四、实例4.1 使用 plotly.express 的漏斗图4.1.1 基本漏斗图4.1.2 堆积漏斗图4.1.3 基本区域漏斗图4.2 使用 plotly.graph_objects 的漏斗图4.2.1 基本漏斗图4.2.2 设置标记大小和颜色4.2.3 堆积漏斗图4.2.4 基本区域漏斗图4.2.5 在区域漏斗…

Postgresql遇到的问题

解决问题之前最好先下载个pgadmin可视化工具&#xff0c;下面可能要用到。先看图&#xff0c;了解基本的\n 代表是当前数据库下面schemas的文件\du 代表你有这写用户&#xff08;角色&#xff09;&#xff0c;后面代表的权限\l 代表的是你的数据库在敲命令之前你德先进去docker…

excel表格技巧:Ctrl+T在超级表中的妙用

在介绍超级表的其它奇妙功能之前&#xff0c;小编先给大家说一个在创建超级表时应该注意的小细节。在创建超级表的对话框里&#xff0c;有一个“表包含标题”的选项&#xff0c;大家一定要记得勾选哦&#xff0c;不然超级表就会变成下面这样&#xff1a;超级表会自作聪明的在表…

【ROS】package.xml文件解析

文章目录 文章目录 前言 一、基本格式 1.基本结构 2.必要标签 3.依赖关系 二、Metapackage包 总结 前言 ros每个功能包中都有一个包清单&#xff0c;它是一个名为package.xml的XML 文件&#xff0c;它必须包含在任何符合 catkin 的包的根文件夹中。此文件定义有关包的属…

Vue过滤器

Vue过滤器1. 概述2. 全局过滤器与局部过滤器2.1 过滤器参数2.2 过滤器的串联1. 概述 在Vue.js中&#xff0c;过滤器主要用于文本的格式化&#xff0c;或者组件数据的过滤与排序等。从Vue2.0.0版本开始&#xff0c;内置的过滤器已经被删除&#xff0c;需要自己编写。 2. 全局过…

【OpenGL学习】绘制三角形

绘制三角形 上节中完成了窗口的绘制&#xff0c;这节我们主要实现在窗口中完成一个最简单的三角形的绘制&#xff0c;同样&#xff0c;要完成一个三角形的绘制&#xff0c;需要以下内容&#xff1a; Vertex Array 存放顶点数据的数组&#xff08;实际上存放的是顶点数据的指针…

Imagination与Synopsys携手加快移动端与数据中心3D可视化技术的发展

IMG CXT GPU与Synopsys Fusion QIK一同优化移动光追应用的PPA中国北京 - 2023年1月13日- Imagination Technologies与领先的电子设计自动化&#xff08;EDA&#xff09;解决方案和服务商Synopsys一起为移动光追解决方案打造一个更加快速、高效的设计流程。光追技术通过模仿光线…

1.1、操作系统的概念、功能和目标

整体框架 1、操作系统的层次结构 对于操作系统&#xff1a; 负责管理协调硬件、软件登计算机资源的工作为上层的应用程序、用户提供简单易用的服务操作系统是系统软件&#xff0c;而不是硬件 对于裸机&#xff08;纯硬件&#xff09;&#xff1a; 例如&#xff1a;CPU、内存…

2023年音视频开发前景如何?音视频开发需要掌握哪些技术?

引言 音视频开发这一行业其实已经出现了有些年头了&#xff0c;但为什么现在就突然火爆了起来呢&#xff1f;实则就是两个字&#xff0c;需求&#xff1b;在这两年中&#xff0c;人们将工作、生活、学习相关的作业都其变成线上化&#xff0c;所以短视频、超高清视频和实时音视频…

【C++】STL容器:list的模拟实现

一、list的结构 1. list的节点 list的底层是一个带头双向循环链表&#xff0c;但list本身和list的节点是不同的结构&#xff0c;需要分开实现。 list节点的结构&#xff1a; template<class T> struct list_node {list_node<T>* _next;list_node<T>* _pre…

ELK日志(4)

搭建filebeatredislogstasheskibana架构&#xff0c;拓扑图参考ELK&#xff08;3&#xff09;安装redis&#xff0c;并启动&#xff08;1&#xff09;准备安装和数据目录[rootes ~]# mkdir -p /opt/redis_cluster/redis_6379/{conf,logs,pid}&#xff08;2&#xff09;下载redi…

CES 2023:推动低碳化与数字化,英飞凌塑造可持续未来

在参展CES 2023的3200多家企业当中&#xff0c;英飞凌虽然在规模上还比不上某些国际科技巨头&#xff0c;但是其展示的内容却相当引人瞩目。作为一家创立于1999年的高科技企业&#xff0c;英飞凌在全球总计拥有56个研发机构&#xff0c;20个生产工厂&#xff0c;其技术实力之雄…

fiddler 抓手机的包

目录 一、fiddler抓手机包的介绍 二、一个前提&#xff0c;及配置 1.前提 2.前提配置 三、两大步 1.设置fiddler 2.设置手机 一、fiddler抓手机包的介绍 Fiddler是一款非常流行并且实用的http抓包工具&#xff0c;它的原理是在本机开启了一个http的代理服务器&#xff…

分享111个JavaScript源码,总有一款适合您

JavaScript源码 分享111个JavaScript源码&#xff0c;总有一款适合您 源码下载链接&#xff1a;https://pan.baidu.com/s/1aUIpouX5nTwW1FF-8lStnw?pwdjh3v 提取码&#xff1a;jh3v 采集代码下载链接&#xff1a;采集代码.zip - 蓝奏云 ​ 下面是文件的名字&#xff0c;我放…

Golang Web Application

Golang Web Application GoLang Web App基本设置 1.导入库 导入fmt和net/http,http建立一个/和编写一个indexPage的函数,fmt编写一个写Hello world! package mainimport ("fmt""net/http" )func main() {http.HandleFunc("/", indexPage)http.L…