首页 > 其他分享 >计网实验

计网实验

时间:2023-05-12 10:14:11浏览次数:45  
标签:状态 LSA 计网 实验 链路 路由表 OSPF 路由器

OSPF

什么是OSPF

  • 链路状态路由协议(开放式最短路由优先)

工作过程

  • 邻居发现:OSPF路由器首先通过发送Hello消息来发现与自己直接相连的其他OSPF路由器。路由器之间通过交换Hello消息来确认彼此的存在,并建立邻居关系。
  • 链路状态数据库同步:一旦邻居关系建立,路由器将通过发送Link State Update消息来传播自己所知道的网络拓扑信息。这些信息被存储在每个路由器的链路状态数据库(Link State Database,LSDB)中。
  • 最短路径计算:每个OSPF路由器使用Dijkstra算法基于链路状态数据库中的信息计算最短路径树(Shortest Path Tree),确定到达网络中其他路由器的最佳路径。该最佳路径被记录在路由表中。
  • 路由表更新:路由器根据最短路径计算的结果更新自己的路由表,将最佳路径和相关的下一跳信息存储在路由表中。
  • 数据包转发:当数据包到达OSPF路由器时,根据路由表中的信息进行转发决策,将数据包发送到下一跳路由器,最终到达目标网络。
  • 链路状态更新:如果网络中的拓扑发生变化,如链路断开或者链路恢复,OSPF路由器将相应地更新链路状态信息,并将这些更新信息广播给其他路由器,以便更新他们的链路状态数据库

LSA类型

在OSPF(Open Shortest Path First)协议中,LSA(Link State Advertisement)是用于在网络中传播链路状态信息的数据包。LSA 包含了路由器对网络拓扑的描述,以及与其相邻的路由器之间的链路状态。

  • LSA 类型 1(Router LSA):每个路由器都会生成这种类型的 LSA,用于描述其直接连接的网络、接口和链路状态。
  • LSA 类型 2(Network LSA):由 DR(Designated Router)生成,并用于描述与其相连的网络的链路状态。
  • LSA 类型 3(Summary LSA):用于在不同的区域之间传递网络的汇总信息,描述了区域间的路由信息。
  • LSA 类型 4(ASBR Summary LSA):用于描述连接不同区域的 ASBR(Autonomous System Boundary Router)之间的链路状态
  • LSA 类型 5(AS External LSA):用于表示来自其他 AS(Autonomous System)的网络信息,允许 OSPF 路由器学习和传播到外部网络的路由。

标签:状态,LSA,计网,实验,链路,路由表,OSPF,路由器
From: https://www.cnblogs.com/WZXwzx/p/17392944.html

相关文章

  • S5PV210 | 裸机蜂鸣器实验
    S5PV210|裸机蜂鸣器实验目录S5PV210|裸机蜂鸣器实验电路原理DATASHEET(相关寄存器设置详解)2.2.7GPD0控制寄存器组2.2.7.1PortGroupGPD0ControlRegister(GPD0CON,R/W,Address=0xE020_00A0)2.2.7.2PortGroupGPD0ControlRegister(GPD0DAT,R/W,Address=0x......
  • S5PV210 | 裸机汇编LED闪烁实验
    S5PV210|裸机汇编LED闪烁实验目录S5PV210|裸机汇编LED闪烁实验原理图DATASHEET2.2.7PORTGROUPGPD0CONTROLREGISTER2.2.7.1PortGroupGPD0ControlRegister(GPD0CON,R/W,Address=0xE020_00A0)2.2.7.2PortGroupGPD0ControlRegister(GPD0DAT,R/W,Address......
  • S5PV210 | 裸机汇编LED流水灯实验
    S5PV210|裸机汇编LED流水灯实验目录S5PV210|裸机汇编LED流水灯实验开发板:1.原理图2.Datasheet相关3.代码3-1.代码实现(流水灯,仅作演示)3-2.工具mkv210_image代码4.运行SD卡启动5.参考开发板:1.原理图上图中,当按下POWER键后,VDD_5V和VDD_IO会产生5V和3.3V的电压,其中D26无......
  • cuda nbody实验
    1并行化非常简单得,直接分配4096线程处理,每个线程处理一个天体。每个kernel函数中的循环,就去全局变量里面找其他点的信息,进行计算就好了2优化2.1共享内存按1中的,是每个线程处理n个,这里的话,每个线程分批次处理,每次处理一部分。引入共享内存。......
  • 实验5
    试验任务11#include<stdio.h>#defineN4intmain(){intx[N]={1,9,8,4};inti;int*p;//方式1:通过数组名和下标遍历输出数组元素for(i=0;i<N;++i)printf("%d",x[i]);printf("\n");//方式2:通过指针变量遍历输出数组元素(写法1)for(p=x;p<x+......
  • 实验5
    #include<stdio.h>#defineN4intmain(){intx[N]={1,9,8,4};inti;int*p;//方式1:通过数组名和下标遍历输出数组元素for(i=0;i<N;++i)printf("%d",x[i]);printf("\n");//方式2:通过指针变量遍历输出数组元素(写法1)for(p=x;p<x+N;++p)......
  • 实验5
    实验1源代码#include<stdio.h>#defineN4intmain(){ intx[N]={1,9,8,4}; inti; int*p; for(i=0;i<N;++i) printf("%d",x[i]); printf("\n"); return0;} 实验截图 实验1.2源代码(使用指针变量p间接访问二维数组)#include<stdio.h>intmain(){......
  • 实验5
    1 #include<stdio.h>intmain(){intx[2][4]={{1,9,8,4},{2,0,4,9}};inti,j;int*p;int(*q)[4];for(i=0;i<2;++i){for(j=0;j<4;++j)printf("%d",x[i][j]);printf("\n");}......
  • 实验五
    task1_1.c#include<stdio.h>#defineN4intmain(){intx[N]={1,9,8,4};inti;int*p;for(i=0;i<N;++i)printf("%d",x[i]);printf("\n");for(p=x;p<x+N;++p)p......
  • 实验5
    task1_1#include<stdio.h>#defineN4intmain(){intx[N]={1,9,8,4};inti;int*p;for(i=0;i<N;++i)printf("%d",x[i]);printf("\n");for(p=x;p<x+N;++p)......