[Cloud Networking] OSPF

开放式最短路径优先(Open Shortest Path First)是一种动态路由协议,它属于链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码和汇总、层次区域划分等优点。

1. OSPF Area

为了适应大型网络,OSPF在AS内划分了多个Area,每个OSPF路由器值维护所在区域的完整链路状态信息。划分区域时,会创建一个称为Area 0的中心区域,其他区域始终与Area 0相连。

路由器分类 说明
区域内路由器IR 所连接的网络属于同一个区域,IR只运行一个OSPF协议实例。
主干路由器BBR 主干区域中的路由器
区域之间的路由器 ABR(汇聚IP) 连接到多个AS,且必须连到主干区域,为每个链接Area分别运行一个OSPF协议实例
AS边界路由器 ASBR 与其他AS交换路由信息
image.png

虚拟链路

  • 主干区域必须是联通的,所有区域边界路由器ABR都能通过主干区域到达其他区域边界路由器
  • 如果不满足上面的条件,主干区域可以配置虚拟链路(virtual link)使其变成联通的

下图中 R3 和 R4 在主干区域,但是需要通过Area3才能实现联通。这时,可以在主干区域的R3、R4之间配置一条 virtual link,使得主干区域连续,实际上这条链路是通过N1中的物理连接来进行通信

image.png

2. Route ID / DR / BDR

Router ID 路由器ID,32位无符号整数,默认用loopback接口中最大的IP作为 Router ID。

Name Info
DR Designated Router, 选举Router ID最大的路由为DR
只有DR能代表该网络发送网络的链路状态
BDR Backup Designated Router,选举Router ID第二大的路由为 BDR
DR发生故障的时候,BDR变成DR
DROTHER Not DR nor BDR
image.png
R1> show ip ospf neighbor
Neighbor ID     Pri   State       Dead Time   Address       Interface
192.168.123.2   1   FULL/BDR      00:00:32    192.168.123.2 FastEthernet0/0
192.168.123.3   1   FULL/DR       00:00:31    192.168.123.3 FastEthernet0/0

R3> show ip ospf neighbor
Neighbor ID     Pri   State       Dead Time   Address         Interface
192.168.123.1   1   FULL/DROTHER  00:00:36    192.168.123.1 FastEthernet0/0
192.168.123.2   1   FULL/BDR      00:00:39    192.168.123.2 FastEthernet0/0

R2> show ip ospf neighbor
Neighbor ID     Pri   State       Dead Time   Address         Interface
192.168.123.1   1   FULL/DROTHER  00:00:31    192.168.123.1 FastEthernet0/0
192.168.123.3   1   FULL/DR       00:00:32    192.168.123.3 FastEthernet0/0

3. LSA / OSPF 邻居表 / LSDB / OSPF路由表

LSA (Link State Advertisement)链路状态通告,用于描述链路状态信息,路由器接口的状态信息,例如接口开销、连接的对象。

借用其他文章中的图 (好像简书不让放链接审核问题。。)


image.png
  • 相邻路由器之间周期性发送HELLO报文,以便建立和维护邻居关系
  • 建立邻居关系后,给邻居路由器发送数据库描述报文(DBD),也就是将自己链路状态数据库中的所有链路状态项目的摘要信息发送给邻居路由器
  • 收到数据库描述报文后,若发现自己缺少其中某些链路状态项目,则会发送链路状态请求报文(LSR)。
  • 对方收到链路状态请求报文后,则会将其所缺少的链路状态项目的详细信息封装在链路状态更新报文(LSU)中发送回去
  • 收到链路状态更新报文后,将这些信息添加到自己的链路状态数据库中,随后发回链路状态确认报文(LSACK)

如上,OSPF在传递链路状态信息之前,需要建立 OSPF邻居关系 ,通过hello包文件里,OSPF邻居表显示了OSPF路由器之间的邻居状态,使用 display ospf peer 查看:

image.png
R1 > display ospf peer
    OSPF Process 1 with Router ID 10.0.1.1
            Neighbors
Area 0.0.0.0 interface 10.0.12.1(G1/0/0)'s neighbors
Router ID:10.0.12.1 Address: 10.0.12.2 GR State: Normal
  State: Rull Mode:Nbr is Master Priority:1
  DR: 10.0.12.1 BDR:10.0.12.2 MTU:0
  ...

LSDB(Link State DataBase, 链路状态数据库),用于描述AS内部的拓扑结构。

每个路由器负责发现、维护与邻居的关系,并将已知的邻居和链路费用 LSA报文 描述,通过可靠的泛洪与 AS 内的其他路由器周期性交互,每个 AS 内的路由器收到所有 LSA 并放入自己的 LSDB

每台路由器基于 LSDB,使用 SPF(Shortest Path First,最短路径优先) 算法进行计算,每台路由器都计算出一棵以自己为根、无环的、拥有最短路径的树,这样路由器就已经知道了到达所有网段的优选路径。

边界路由器可以通过距离矢量算法互相传递路由,从而实现整个网络的互联。

每隔一段时间或链路状态发生变化时,重新生成LSA,路由器通过泛洪将LSA通告出去,实现路由实时更新。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,826评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,968评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,234评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,562评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,611评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,482评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,271评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,166评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,608评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,814评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,926评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,644评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,249评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,866评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,991评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,063评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,871评论 2 354

推荐阅读更多精彩内容

  • 1. AS (Autonomous System) 由于互联网规模庞大,所以网络会被分为许多 自治系统(AS-Au...
    虎鲸1225阅读 44评论 0 0
  • Open Shortest Path First,开放最短路径优先 OSPFv2 OSPF的术语 链路(Link)...
    凯凯凯瑞斯阅读 2,177评论 2 9
  • 一.OSPF基础 1.特性 OSPF是目前使用最广泛的IGP路由协议,属于链路状态路由协议,使用Dijkstra算...
    Simple_bc29阅读 2,910评论 0 3
  • 一、什么是OSPF? OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关...
    Jzyue阅读 762评论 0 4
  • 今天来给大家讲讲OSPF协议。 OSPF是一种基于SPF算法的链路状态路由协议。 上图是在一个OSPF区域里面添入...
    小云晓云阅读 842评论 0 4