跳到正文

OSPF 链路状态路由

52 分钟

OSPF 链路状态路由

本课目标

能从IP报文、地址前缀、映射表、路由状态和设备队列逐步推出下一跳、分片、协议时序或拥塞结果,并用代码复核数值。

核心机制

OSPF是自治系统内链路状态协议:发现邻居、形成邻接、可靠泛洪LSA,各路由器建立一致链路状态数据库并运行最短路径。区域层次减少泛洪和计算范围,骨干区连接其他区域。度量通常与链路开销相关,不等同跳数。

报文、地址与时序推演

A-B代价1、B-C代价2、A-C代价5,Dijkstra得到A到C为3经B。LSA有序号和老化时间,旧信息不能覆盖更新拓扑。

统一记录“输入接口、首部字段、目的前缀、候选路由、最长匹配、输出接口、队列状态”。控制协议题另画请求/响应主体和地址层次;路由题记录每轮距离、前驱或路径属性。所有地址先标前缀长度,所有分片先标数据长度与8字节偏移单位。

可运行模型

import heapq
g={'A':{'B':1,'C':5},'B':{'C':2},'C':{}};d={'A':0};q=[(0,'A')]
while q:
 x,u=heapq.heappop(q)
 for v,w in g[u].items():
  if x+w<d.get(v,99):d[v]=x+w;heapq.heappush(q,(x+w,v))
print(d)

先手算再运行。修改MTU、前缀、NAT端口、链路代价、AS属性或到达率,说明报文和状态怎样变化。

边界与错因

转发不等于路由;ARP解析下一跳MAC而不改变IP目的;NAT映射必须能让回包唯一还原。IPv4分片偏移单位不是字节,IPv6路由器不分片。RIP/OSPF/BGP分别是距离向量、链路状态、路径向量与策略,不能只按“最短”混答。转发表正确也可能因输出队列拥塞丢包。

迁移练习

把同一分组改MTU、DF或TTL;把同一地址放入多个重叠前缀;让链路代价或BGP属性改变;给路由器输入增加突发流量。每次重画字段、候选项和最终状态,而非只改结论。

课内验收

完成下方两道在线题,并提交分片表、前缀匹配表、协议时序或路由迭代表。计算题保留字节、bit和前缀单位。

Practice

本课练习

2

先独立作答再提交;编程题会在隔离沙箱中真实编译、运行并对拍。

1最短路 3

A-B=1、B-C=2、A-C=5,A到C最短?

登录 后答题可以领积分
2OSPF 3

正确?

多选题:必须选全正确项,漏选或多选均不得分。

登录 后答题可以领积分