网络基础——ISIS

2024-04-02 06:52
文章标签 基础 网络 isis

本文主要是介绍网络基础——ISIS,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

名词

  • ISIS:中间系统到中间系统,优先级是15
  • 集成化ISIS:这是在优化后,可以使用在OSI模型上的
  • NET地址:由区域ID、系统ID和SEL组成,一台设备上最多配置3个NET地址,条件是区域号要不一致,系统ID要一致
  • 区域ID:就是来表明ISIS的区域号
  • 系统ID:是ISIS的唯一标识,表明运行该协议的路由器
  • SEL:标识服务类型,在TCP/IP中,该值固定为00
  • 路由器角色类型:level-1、level-1-2、level-2,华为设备默认为level-1-2

原理

 ISIS的原理流程:
  1.     运行了ISIS的设备之间互相发送hello报文,建立ISIS邻居关系,此时的状态是init
  2.     建立了邻居关系之后,互相泛洪LSP信息,构建LSDB
  3.     根据LSDB执行SPF算法,计算出最优ISIS路由,此时的状态是UP,但是需要注意可以查看到ISIS路由,可是不一定是在路由表中看到的
路由器角色与数据库
  • level-1只能维护L1的数据库
  • level-1-2可以维护L1和L2的数据库
  • level-2可以维护L2的数据库
关系建立
  • 在ISIS中,骨干区域是level-2级别的邻居关系,level-1级别邻居关系是非骨干区域
  • 都为level-1,如果是同区域,那么可以建level-1基本的邻居,如果不是通区域,不能建立邻居关系
  • 一台为level-1,一台为level-1-2,区域号一样,可以建立level-1邻居关系,区域号不一样,不能建立邻居关系
  • 一台为level-1,一台为level-2,不能建立邻居关系
  • 当设备都是level-2时,不管区域号一不一样,都可以正常建立level-2邻居关系
  • 当一台是level-2,另一台是level-1-2时,区域号一样,可以正常建立邻居关系,区域号不一样,不能建立邻居关系
  • 当设备都是level-1-2时,区域号一致,可以建立level-1和level-2级别邻居关系,如果是区域号不一致,那么可以建立level-2邻居关系
状态机
  • down:就是最开始的初始状态
  • init:此时运行ISIS的设备开始发送hello报文
  • up:此时是ISIS邻居建立成功
报文
  • hello报文:就是发现、建立、维持邻居关系,同时选举DIS设备,有level-1、P2P、level-2三种hello报文,在这里会使用两个组播地址0180-c200-0014/0180-c200-0015
  • LSP报文:链路状态信息报文,用来更新ISIS中的链路状态信息
  • CSNP报文:完全序列号报文,在不同的网络类型中,发送不一样,但是作用都是同步LSDB
  • PSNP报文:部分序列号报文,请求缺少的LSP信息,并且进行回复
DIS选举过程
  • 首先比较优先级,为0-127,默认为64,为0也会参加选举,越大越优先
  • 优先级相同,那么比较MAC地址,越大越优先
  • DIS设备的时间是普通路由器的三分之一
路由渗透
  • 原理是因为level-1-2会把level-1的路由传递到level-2的区域,但是level-1-2不会把level-2的路由传递到level-1,所有才出现路由渗透,也就是路由引入
  • level-1想要访问level-2就要依靠level-1-2的缺省路由,条件是level-1设备需要收到ATT字段置位为额LSP

实验

代码

isis 1//进入ISIS进程下

network-entity 49.0001.0000.0000.0001.00//配置NET地址

is-level  级别//配置路由角色

is-name 名字//配置标识

spf-priority 1-127中间的数字//修改ISIS选举DIS的优先级
ip ip-prefix 1 index 10 permit 匹配的地址 掩码//创建一个IP前缀,用来抓取

import-route isis level-2 into level-1 filter-policy ip-prefix 1 //把level-2的路由引入到level-1 

这篇关于网络基础——ISIS的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/869274

相关文章

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

poj 3181 网络流,建图。

题意: 农夫约翰为他的牛准备了F种食物和D种饮料。 每头牛都有各自喜欢的食物和饮料,而每种食物和饮料都只能分配给一头牛。 问最多能有多少头牛可以同时得到喜欢的食物和饮料。 解析: 由于要同时得到喜欢的食物和饮料,所以网络流建图的时候要把牛拆点了。 如下建图: s -> 食物 -> 牛1 -> 牛2 -> 饮料 -> t 所以分配一下点: s  =  0, 牛1= 1~

poj 3068 有流量限制的最小费用网络流

题意: m条有向边连接了n个仓库,每条边都有一定费用。 将两种危险品从0运到n-1,除了起点和终点外,危险品不能放在一起,也不能走相同的路径。 求最小的费用是多少。 解析: 抽象出一个源点s一个汇点t,源点与0相连,费用为0,容量为2。 汇点与n - 1相连,费用为0,容量为2。 每条边之间也相连,费用为每条边的费用,容量为1。 建图完毕之后,求一条流量为2的最小费用流就行了

poj 2112 网络流+二分

题意: k台挤奶机,c头牛,每台挤奶机可以挤m头牛。 现在给出每只牛到挤奶机的距离矩阵,求最小化牛的最大路程。 解析: 最大值最小化,最小值最大化,用二分来做。 先求出两点之间的最短距离。 然后二分匹配牛到挤奶机的最大路程,匹配中的判断是在这个最大路程下,是否牛的数量达到c只。 如何求牛的数量呢,用网络流来做。 从源点到牛引一条容量为1的边,然后挤奶机到汇点引一条容量为m的边

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close

音视频入门基础:WAV专题(10)——FFmpeg源码中计算WAV音频文件每个packet的pts、dts的实现

一、引言 从文章《音视频入门基础:WAV专题(6)——通过FFprobe显示WAV音频文件每个数据包的信息》中我们可以知道,通过FFprobe命令可以打印WAV音频文件每个packet(也称为数据包或多媒体包)的信息,这些信息包含该packet的pts、dts: 打印出来的“pts”实际是AVPacket结构体中的成员变量pts,是以AVStream->time_base为单位的显