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

IS-IS

二、IS-IS中的DIS与OSPF中的DR

Level-1和Level-2的DIS是分别选举的,用户可以为不同级别的DIS选举设置不同的优先级。DIS的选举规则如下:DIS优先级数值最大的被选为DIS。如果优先级数值最大的路由器有多台,则其中MAC地址最大的路由器会成为DIS。DIS发送Hello PDU的时间间隔是普通路由器的1/3,这样可以确保DIS出现故障时能够被更快速地被发现。IS-IS中DIS与OSPF协议中DR(Designated Router)的区别:在IS-IS广播网中,优先级为0的路由器也参与DIS的选举,而在OSPF中优先级为0的路由器则不参与DR的选举。在IS-IS广播网中,当有新的路由器加入,并符合成为DIS的条件时,这个路由器会被选中成为新的DIS,原有的伪节点被删除。此更改会引起一组新的LSP泛洪。而在OSPF中,当一台新路由器加入后,即使它的DR优先级值最大,也不会立即成为该网段中的DR。在IS-IS广播网中,同一网段上的同一级别的路由器之间都会形成邻接关系,包括所有的非DIS路由器之间也会形成邻接关系。而在OSPF中,路由器只与DR和BDR建立邻接关系。

伪节点ID:当该参数不为零时,表示该LSP为伪节点生成。

CSNP包含该设备LSDB中所有的LSP摘要,路由器通过交互 CSNP来判断是否需要同步LSDB。在广播网络上,CSNP由DIS定期发送(缺省的发送周期为10秒)

三、实验配置

 

ISIS 刷新时间  15分钟

ISIS 老化时间   20分钟

level1路由计算:

R1是Level-1路由器,只维护Level-1 LSDB,该LSDB中包含同属一个区域的R2及R3以及R1自己产生的Level-1 LSP。
R1根据LSDB中的Level-1 LSP计算出Area 49.0123内的拓扑,以及到达区域内各个网段的路由信息。
R2及R3作为Area 49.0123内的Level-1-2路由器,会在它们向该区域下发的Level-1 LSP中设置ATT标志位,用于向区域内的Level-1路由器宣布可以通过自己到达其他区域。 R1作为Level-1路由器,会根据该ATT标志位,计算出指向R2或R3的默认路由。

[r1]isis 100
[r1-isis-100]network-entity 49.0123.0000.0000.0001.00
[r1-isis-100]is-level level-1
[r1-isis-100]q
[r1]int  g0/0/0
[r1-GigabitEthernet0/0/0]isis enable  100
[r1-GigabitEthernet0/0/0]q
[r1]dis ip routing-table 
[R2]isis 100
[R2-isis-100]network-entity 49.0123.0000.0000.0002.00
[R2-isis-100]is-level level-1-2
[R2-isis-100]q
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]isis enable  100
[R2-GigabitEthernet0/0/0]q
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]isis enable 100
[R2-GigabitEthernet0/0/1]q
[R3]isis 100
[R3-isis-100]network-entity 49.0123.0000.0000.0003.00 
[R3-isis-100]is-level level-1-2
[R3-isis-100]q
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]isis enable  100
[R3-GigabitEthernet0/0/0]q
[R3]int g0/0/1
[R3-GigabitEthernet0/0/1]isis enable 100
[R3-GigabitEthernet0/0/1]q
[R4]isis 100
[R4-isis-100]network-entity 49.0045.0000.0000.0004.00
[R4-isis-100]is-level level-2
[R4-isis-100]q
[R4]int g0/0/0
[R4-GigabitEthernet0/0/0]isis enable 100
[R4-GigabitEthernet0/0/0]q
[R4]int g0/0/1
[R4-GigabitEthernet0/0/1]isis enable 100
[R4-GigabitEthernet0/0/1]q
[R4]int g0/0/2
[R4-GigabitEthernet0/0/2]isis enable 100
[R4-GigabitEthernet0/0/2]q
[R5]isis 100
[R5-isis-100]network-entity 49.0045.0000.0000.0005.00
[R5-isis-100]is-level level-2
[R5-isis-100]q
[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]isis enable 100
[R5-GigabitEthernet0/0/0]q
[R5]isis 100
[R5-isis-100]import-route direct 
[R4]int  g0/0/1
[R4-GigabitEthernet0/0/1]isis cost 15  //修改接口cost值
[R4-GigabitEthernet0/0/1]q
[R4]dis ip routing-table 

 

路由渗透:

缺省情况下,Level-1-2路由器不会将到达其他区域的路由通告本Level-1区域中。通过路由渗透,可以将区域间路由通过Leve-1-2路由器传递到Level-1区域,此时Leve-1路由器可以学习到其他区域的详细路由,从而计算出最优路径。

[R3]isis 100
[R3-isis-100]import-route isis level-2 into level-1 [r1]dis isis brief 
ISIS Protocol Information for ISIS(100)
---------------------------------------
SystemId: 0000.0000.0001      System Level: L1    
Area-Authentication-mode: NULL
Domain-Authentication-mode: NULL
Ipv6 is not enabled
ISIS is in invalid restart status
ISIS is in protocol hot standby state: Real-Time Backup
Interface: 192.168.123.1(GE0/0/0)
Cost: L1 10        L2 10                Ipv6 Cost: L1 10   L2 10   
State: IPV4 Up                          IPV6 Down
Type: BROADCAST                         MTU: 1497      
Priority: L1 64   L2 64   
Timers:     Csnp: L1 10    L2 10    ,Retransmit: L12 5   , Hello: L1 10 L2 10  ,
Hello Multiplier: L1 3    L2 3     , LSP-Throttle Timer: L12 50  
[R2]dis isis peer 
Peer information for ISIS(100)
System Id   Interface    Circuit Id    State HoldTime Type     PRI
0000.0000.0001  GE0/0/0            0000.0000.0003.01         Up          22s                       L1           64 
0000.0000.0003  GE0/0/0            0000.0000.0003.01         Up            7s                       L1(L1L2)  64 
0000.0000.0003  GE0/0/0            0000.0000.0003.01           Up            8s                     L2(L1L2)  64 
0000.0000.0004  GE0/0/1            0000.0000.0004.01            Up            7s                     L2           64 
备注:查看ISIS 邻居关系的时候,circuit .id 为当前邻居关系中 DIS 
[r1]dis isis lsdb 
Database information for ISIS(100)
----------------------------------
Level-1 Link State Database
LSPID    Seq Num    Checksum   Holdtime   Length  ATT/P/OL
0000.0000.0001.00-00* 0x00000010   0xa07f          582           70      0/0/0   
0000.0000.0002.00-00  0x00000013   0xafb8          959           112     1/0/0   
0000.0000.0003.00-00  0x00000013   0xa1b7          879           86      1/0/0   
0000.0000.0003.01-00  0x0000000d   0x5697          879           66      0/0/0   
备注:systemID 后面的01 为非0时 ,表明此条LSP由 DIS产生 ,*表示当前设备自己产生的LSP
[R3]dis isis interface 
Interface information for ISIS(100)
-----------------------------------
Interface       Id      IPV4.State          IPV6.State      MTU  Type  DIS   
GE0/0/0         001         Up                 Down         1497 L1/L2 Yes/Yes
GE0/0/1         002         Up                 Down         1497 L1/L2 No/Yes
备注: 通过此条命令,能够看到当前接口在L1 邻居关系上是不是DIS  ,以及当前接口在L2邻居关系上是不是DIS  
配置DIS:
[r1]interface g0/0/0
[r1-GigabitEthernet0/0/0]isis dis-priority 127
[r1]dis isis interface 
Interface information for ISIS(100)
-----------------------------------
Interface       Id      IPV4.State          IPV6.State      MTU  Type  DIS   
GE0/0/0         001         Up                 Down         1497 L1/L2 Yes/No 
修改网络类型:
[R4]int g0/0/2
[R4-GigabitEthernet0/0/2]isis circuit-type p2p
[R4-GigabitEthernet0/0/2]q
[R4]dis isis brief 
ISIS Protocol Information for ISIS(100)
---------------------------------------
SystemId: 0000.0000.0004      System Level: L2    
Area-Authentication-mode: NULL
Domain-Authentication-mode: NULL
Ipv6 is not enabled
ISIS is in invalid restart status
ISIS is in protocol hot standby state: Real-Time Backup
Interface: 192.168.45.4(GE0/0/2)
Cost: L1 10        L2 10                Ipv6 Cost: L1 10   L2 10   
State: IPV4 Up                          IPV6 Down
Type: P2P                               MTU: 1497      
接口修改邻居关系: 
R2 和R3都是L1/2路由器类型,默认建立 L1/L2邻居关系  ,现在路由器类型不能表(因为为边界设备),R2和R3只想建立L1的邻居关系,可以修改接口的邻居关系
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]isis circuit-level level-1
[R3]int g0/0/0
[R3-GigabitEthernet0/0/0]isis circuit-level level-1
[R3]dis isis peer 

Isis 认证:

接口认证:接口下做认证
Hello报文使用的认证密码保存在接口下,发送带认证TLV的认证报文,互相连接的路由器接口必须配置相同的口令。
区域认证:区域内所有L1 路由器做认证
区域内的每一台L1路由器都必须使用相同的认证模式和具有共同的钥匙串。
路由域认证:区域内所有L1/  L1/2路由器做认证
IS-IS域内的每一台L2和L1/L2类型的路由器都必须使用相同模式的认证,并使用共同的钥匙串。
对于区域和路由域认证,可以设置为SNP和LSP分开认证。
本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都进行认证检查。
本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文携带认证TLV,但不对收到的SNP报文进行检查。
本地发送的LSP报文携带认证TLV,对收到的LSP报文进行认证检查;发送的SNP报文不携带认证TLV,也不对收到的SNP报文进行认证检查。
本地发送的LSP报文和SNP报文都携带认证TLV,对收到的LSP报文和SNP报文都不进行认证检查。

接口认证配置:

[R4]INT G0/0/2
[R4-GigabitEthernet0/0/2]isis authentication-mode simple plain huawei
[R4-GigabitEthernet0/0/2]q
[R4]dis isis peer    //发现邻居关系没有啦 
Peer information for ISIS(100)
System Id     Interface          Circuit Id       State HoldTime Type     PRI
0000.0000.0002  GE0/0/0            0000.0000.0004.01 Up   21s      L2       64 
[R4]dis isis error 
Statistics of error packets for ISIS(100)
-----------------------------------------
LSP packet errors:
Longer LSP              : 0           Smaller LSP             : 0           
Mismatched Level        : 0           Invalid Sysid           : 0           
Zero Sequence Number    : 0           Illegal IS Type         : 0           
Zero Checksum           : 0           Incorrect Checksum      : 0           
Bad Authentication      : 0           Bad Auth Count          : 0           
More Protocol TLV       : 0           Bad Nbr TLV             : 0           
Bad Extended IS TLV     : 0           Bad IF Addr TLV         : 0           
Bad Reach TLV           : 0           Bad Inter Domain TLV    : 0           
Mismatched Area Id(L1)  : 0           Bad TLV Length          : 0          
Bad Alias TLV           : 0           Bad Area TLV            : 0           
Bad SRLG TLV            : 0           Unknown Adjacency       : 0           
Bad Protocol ID         : 0           Bad Version             : 0           
Zero Lifetime           : 4           Bad Ext Reach TLV       : 0           
Bad TE Router ID TLV    : 0           Bad TE Sub TLV          : 0           
Hello packet errors:
Bad Packet Length       : 0           Reserved CircType       : 0           
Repeated System ID      : 0           Bad Circuit Type        : 0           
Longer packet           : 0           More Area Addr          : 0           
Longer Area Addr        : 0           Bad Area Addr TLV       : 0           
More IF Addr            : 0           Bad Formatted IF TLV    : 0           
More Nbr SNPA(LAN)      : 0           Invalid Sysid           : 0           
Bad TLV Length          : 0           Zero HoldingTime        : 0           
Unusable IP Addr        : 0           Repeated IPv4 Addr      : 0           
Mismatched Area Addr(L1): 0           Mismatched Proto        : 0           
SNPA Conflicted(LAN)    : 0           Mismatched Level        : 0           
Mismatched Max Area Addr: 0           Bad Authentication      : 5           
More Auth TLV           : 0           3-Way Option Error(P2P) : 0           
No Area Addr TLV        : 0           Bad Protocol ID         : 0           
Bad Version             : 0           Invalid IPv6 Addr       : 0           
More IPv6 IF Addr       : 0           Duplicate IPv6 Addr     : 0           
More Optional Checksum  : 0           Bad Optional Checksum   : 0
[R5]int g0/0/0
[R5-GigabitEthernet0/0/0]isis authentication-mode simple plain huawei

备注:

数据传输:

simple   明文认证

MD5   密文认证

本地存储:

plain    明文

cipher   密文    

**实验:  ISIS   和OSPF  引入 **

整体思路:

1,配置ISIS

2,  配置OSPF

3,  配置OSPF 与ISIS 互相引入

拓扑1:

ISIS 配置:

**R1: **

isis 100

is-level level-1

network-entity 49.0123.0000.0000.0001.00

interface GigabitEthernet0/0/0

ip address 192.168.123.1 255.255.255.0

isis enable 100

isis dis-priority 127

R2配置:

isis 100

network-entity 49.0123.0000.0000.0002.00

is-level level-1-2

#

interface GigabitEthernet0/0/0

ip address 192.168.123.2 255.255.255.0

isis enable 100

isis circuit-level level-1

R4配置:

isis 100

is-level level-2

network-entity 49.0045.0000.0000.0004.00

#

interface GigabitEthernet0/0/0

ip address 192.168.24.4 255.255.255.0

isis enable 100

#

interface GigabitEthernet0/0/2

ip address 192.168.45.4 255.255.255.0

isis enable 100

isis circuit-type p2p

isis authentication-mode simple plain huawei

R5配置:

isis 100

is-level level-2

network-entity 49.0045.0000.0000.0005.00

#

interface GigabitEthernet0/0/0

ip address 192.168.45.5 255.255.255.0

isis enable 100

isis circuit-type p2p

isis authentication-mode simple plain huawei

OSPF 配置:

R6配置:

ospf 1 router-id 6.6.6.6

area 0.0.0.0

network 192.168.4.0 0.0.0.255

network 192.168.5.0 0.0.0.255

R1配置:

[r1]ospf 1 router-id  1.1.1.1

[r1-ospf-1]area 0

[r1-ospf-1-area-0.0.0.0]network 192.168.4.0 0.0.0.255

配置ISIS 与OSPF 互相引入:

[r1]ospf 1

[r1-ospf-1]default-route-advertise   //将ISIS 里默认路由引进来

[r1-ospf-1]q

[r1]isis 100  

[r1-isis-100]import-route ospf 1 level-1  //将OSPF 进程1 的路由引入到ISIS 的L1 路由表 (默认引入到L2)

[r1-isis-100]q

拓扑2:

 

ISIS 配置同上。
R7的OSPF 配置:
ospf 1 router-id 7.7.7.7 
area 0.0.0.0 
network 192.168.2.0 0.0.0.255 
network 192.168.3.0 0.0.0.255 
R5的OSPF配置:
ospf 1 router-id 5.5.5.5 
import-route isis 100   //将 Isis 100  引入到 OSPF 
area 0.0.0.0 
network 192.168.2.0 0.0.0.255 
[R5]isis 100
[R5-isis-100]import-route ospf  1  //将OSPF 1  路由引入到默认 ISIS  L2 路由表

相关文章:

IS-IS

二、IS-IS中的DIS与OSPF中的DR Level-1和Level-2的DIS是分别选举的,用户可以为不同级别的DIS选举设置不同的优先级。DIS的选举规则如下:DIS优先级数值最大的被选为DIS。如果优先级数值最大的路由器有多台,则其中MAC地址最大的路由器会成为DI…...

【MySQL】为什么使用B+树做索引

MySQL的innoDB引擎使用的是B树的结构来存储索引的,那么为什么会使用B树呢?为什么不使用其他的结构?本篇我们深入MySQL底层来了解B树。本文中说到的MySQL都是InnoDB引擎的 在这之前,先了解一下InnoDB是如何存储数据的 MySQL是根据数据页的方式…...

php 安装mongodb扩展模块,rdkafka模块

mongodb mongodb扩展下载 选择php版本,根据报错提示,选择扩展对应的版本选择非安全进程将php_mongodb.dll放到php/ext目录下修改php.ini配置,添加extensionphp_mongodb.dll开启php_mongodb扩展,重启服务php -m 查看是否开启成功…...

【数据结构】初探时间与空间复杂度:算法评估与优化的基础

🚩纸上得来终觉浅, 绝知此事要躬行。 🌟主页:June-Frost 🚀专栏:数据结构 🔥该文章主要了解算法的时间复杂度与空间复杂度等相关知识。 目录: 🌏 时间复杂度&#x1f52d…...

SpringCloud Alibaba - Sentinel 限流规则(案例 + JMeter 测试分析)

目录 一、Sentinel 限流规则 1.1、簇点链路 1.2、流控模式 1.2.1、直接流控模式 1.2.2、关联流控模式 a)在 OrderController 中新建两个端点. b)在 Sentinel 控制台中对订单查询端点进行流控 c)使用 JMeter 进行测试 d)分…...

uniapp 条件编译 APP 、 H5 、 小程序

一、#ifdef、#ifndef、 #endif三者的区别、 标识作用#ifdef仅在某个平台上使用#ifndef在除了这个平台的其他平台上使用(非此平台使用)#endif结束条件编译 二、平台标识 标识平台APP-PLUS5AppMP微信小程序/支付宝小程序/百度小程序/头条小程序/QQ小程序MP-WEIXIN微…...

深度学习——权重衰减(weight_decay)

深度学习——权重衰减(weight_decay) 文章目录 前言一、权重衰减1.1. 范数与权重衰减1.2. 高维线性回归1.3. 从零开始实现1.3.1.初始化模型参数1.3.2. 定义L₂范数惩罚1.3.3. 定义训练代码实现1.3.4. 不管正则化直接训练1.3.5. 使用权重衰减 1.4. 简洁实现 总结 前言…...

nignx如何部署让前端不用清缓存就可以部署

在Nginx中,可以使用以下方法来部署前端应用程序,使前端用户无需清空缓存即可进行部署: 1、使用版本号:在前端应用程序的构建过程中,可以添加一个独特的版本号到应用程序的名称中。每次部署时,将版本号更新…...

CSS3实现动画加载效果

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>加载效果</title><link rel"style…...

springboot定时任务Scheduled使用和弊端分析

1.springboot定时任务Scheduled使用说明: (1)创建定时任务类 import com.one.utils.DateUtil; import org.springframework.beans.factory.annotation.Autowired; import...

openGauss学习笔记-93 openGauss 数据库管理-访问外部数据库-oracle_fdw

文章目录 openGauss学习笔记-93 openGauss 数据库管理-访问外部数据库-oracle_fdw93.1 编译oracle_fdw93.2 使用oracle_fdw93.3 常见问题93.4 注意事项 openGauss学习笔记-93 openGauss 数据库管理-访问外部数据库-oracle_fdw openGauss的fdw实现的功能是各个openGauss数据库及…...

【Git】Git下载安装环境配置 下载速度慢的解决方案

这里写自定义目录标题 介绍一、下载官网下载镜像站 二、安装安装成功 三、Git三种界面介绍Git cmd界面展示git bash界面展示git GUI界面展示 四、环境配置配置流程1、打开环境变量界面2、添加环境变量 /删除环境变量3、在变量中找到Git\cmd的值就表示配置成功4、没有找到点击新…...

常见源协议介绍

开源协议&#xff08;Open Source License&#xff09;是一种法律文档&#xff0c;用于规定如何使用、修改和分发开源软件和其他开源项目的规则和条件。这些协议允许创作者或组织将其创造的代码或作品以开放源代码的形式共享给他人&#xff0c;以促进协作、创新和知识共享。常见…...

大数据概述(林子雨慕课课程)

文章目录 1. 大数据概述1.1 大数据概念和影响1.2 大数据的应用1.3 大数据的关键技术1.4 大数据与云计算和物联网的关系云计算物联网 1. 大数据概述 大数据的四大特点&#xff1a;大量化、快速化、多样化、价值密度低 1.1 大数据概念和影响 大数据摩尔定律 大数据由结构化和非…...

ES6 class类关键字super

super关键字 在 JavaSCript 中&#xff0c;能通过 extends 关键字去继承父类 super 关键字在子类中有以下用法&#xff1a; 当成函数调用 super() 作为 "属性查询" super.prop 和 super[expr] super() super 作为函数调用时&#xff0c;代表父类的构造函数。 ES6 要求…...

C++并发与多线程(4) | 传递临时对象作为线程参数的一些问题Ⅰ

一、陷阱1 写一个传递临时对象作为线程参数的示例: #include <iostream> #include <vector> #include <thread> using namespace std;void myprint(const int& i, char* pmybuf) {cout << i << endl;cout << pmybuf << endl;r…...

CentOS Integration SIG 正式成立

导读CentOS 董事会已批准成立 CentOS Integration Special Interest Group (SIG)。该小组旨在帮助那些在 Red Hat Enterprise Linux (RHEL) 或特别是其上游 CentOS Stream 上构建产品和服务的人员&#xff0c;验证其能否在未来版本中继续运行。 红帽 RHEL CI 工程师 Aleksandr…...

智能AI系统源码ChatGPT系统源码+详细搭建部署教程+AI绘画系统+已支持OpenAI GPT全模型+国内AI全模型

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统&#xff0c;支持OpenAI GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作Chat…...

软考程序员考试大纲(2023)

文章目录 前言一、考试说明1.考试目标2.考试要求3&#xff0e;考试科目设置 二、考试范围考试科目1&#xff1a;计算机与软件工程基本知识1&#xff0e;计算机科学基础2&#xff0e;计算机系统基础知识3&#xff0e;系统开发和运行知识4&#xff0e;网络与信息安全基础知识5&am…...

【重拾C语言】七、指针(一)指针与变量、指针操作、指向指针的指针

目录 前言 七、指针 7.1 指针与变量 7.1.1 指针类型和指针变量 7.1.2 指针所指变量 7.1.3 空指针、无效指针 7.2 指针操作 7.2.1 指针的算术运算 7.2.2 指针的比较 7.2.3 指针的递增和递减 7.3 指向指针的指针 前言 指针是C语言中一个重要的概念正确灵活运用指针 可…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

测试markdown--肇兴

day1&#xff1a; 1、去程&#xff1a;7:04 --11:32高铁 高铁右转上售票大厅2楼&#xff0c;穿过候车厅下一楼&#xff0c;上大巴车 &#xffe5;10/人 **2、到达&#xff1a;**12点多到达寨子&#xff0c;买门票&#xff0c;美团/抖音&#xff1a;&#xffe5;78人 3、中饭&a…...

【SQL学习笔记1】增删改查+多表连接全解析(内附SQL免费在线练习工具)

可以使用Sqliteviz这个网站免费编写sql语句&#xff0c;它能够让用户直接在浏览器内练习SQL的语法&#xff0c;不需要安装任何软件。 链接如下&#xff1a; sqliteviz 注意&#xff1a; 在转写SQL语法时&#xff0c;关键字之间有一个特定的顺序&#xff0c;这个顺序会影响到…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

HarmonyOS运动开发:如何用mpchart绘制运动配速图表

##鸿蒙核心技术##运动开发##Sensor Service Kit&#xff08;传感器服务&#xff09;# 前言 在运动类应用中&#xff0c;运动数据的可视化是提升用户体验的重要环节。通过直观的图表展示运动过程中的关键数据&#xff0c;如配速、距离、卡路里消耗等&#xff0c;用户可以更清晰…...

嵌入式学习笔记DAY33(网络编程——TCP)

一、网络架构 C/S &#xff08;client/server 客户端/服务器&#xff09;&#xff1a;由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序&#xff0c;负责提供用户界面和交互逻辑 &#xff0c;接收用户输入&#xff0c;向服务器发送请求&#xff0c;并展示服务…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

Go语言多线程问题

打印零与奇偶数&#xff08;leetcode 1116&#xff09; 方法1&#xff1a;使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...