一、OSPF交互过程

在同一个区域内,有四台路由器:

router-id:4.4.4.4:1,2,4

router-id:3.3.3.3:2,3,4

router-id::2.2.2.2:1,2,5

router-id::1.1.1.1:2,5,6

使用OSPF组网,这四台路由器的交互过程如下。

1. 接口启用 OSPF → 发送 Hello 包

四台路由器在网段 2 的接口都会:

  • 224.0.0.5 组播发送 Hello 包
  • 携带:Router-ID、区域号、掩码、Hello/Dead 时间、邻居列表

网段 2上:

4.4.4.4、3.3.3.3、2.2.2.2、1.1.1.1 互相收到 Hello,开始建立邻居关系。

2. 邻居状态机变迁

  1. Down:初始状态
  2. Init:收到对方 Hello,但自己没在对方邻居列表里
  3. 2-Way:收到 Hello,且自己出现在对方邻居列表→ 至此,邻居关系建立完成

多接入网络(网段 2) 中,接下来会选举:

  • DR(指定路由器)
  • BDR(备份指定路由器)其他为 DROther。

选举规则:

  1. 接口 OSPF 优先级高的胜出
  2. 优先级相同 → Router-ID 大的胜出
  • 4.4.4.4 最大 → 最可能成为 DR
  • 3.3.3.3 次之 → 最可能成为 BDR
  • 2.2.2.2、1.1.1.1 → DROther

3. 建立邻接关系(Adjacency)

只有:

  • DR ↔ BDR
  • DR ↔ DROther
  • BDR ↔ DROther

会建立完全邻接,进入 ExStart 状态。

DROther 之间只停留在 2-Way,不直接同步 LSA。

4. 数据库同步过程(DBD、LSR、LSU、LSAck)

(1)ExStart

DR/BDR 与邻居协商 主从关系(Router-ID 大为主),确定 DBD 序列号。

(2)Exchange

互相发送 DBD(数据库描述包),携带 LSA 头部,交换 “我有哪些 LSA”。

(3)Loading

收到 DBD 后,对比自己缺少的 LSA,发送:

  • LSR(Link State Request):请求缺失的 LSA

对方回复:

  • LSU(Link State Update):携带完整 LSA

收到 LSU 后回复:

  • LSAck:确认收到

5. 数据库完全同步(Full 状态)

当所有 LSA 同步完成,邻居状态变为 Full

此时:

四台路由器在同一区域拥有完全相同的 LSDB

二、LSA 传播逻辑(同一区域)

  1. 每台路由器生成 Type 1 LSA(Router LSA),宣告自己直连链路
  2. DR 在广播网络生成 Type 2 LSA(Network LSA),描述网段 2 上所有节点
  3. 所有 LSA 在同一区域内泛洪
  4. 每台路由器用 SPF 算法计算最短路径,生成路由表
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇