核心网路由协议概述

目录

参考

1 什么是核心网

2 核心网路由协议的分类

2.1 静态路由

2.2 动态路由

(1)基于距离向量的协议

(2)基于链路状态的协议

3 核心网路由实现

4 常见的几种路由协议

4.1 RIP(Routing Information Protocol)

4.2 OSPF(Open Shortest Path First)

4.3 IS-IS

4.4 BGP(Border Gateway Protocol)

5 杂记


参考

华为的技术支持网站(公开的,作者也是百度查询学习。)

华为企业产品技术支持网站 - 华为

1 什么是核心网

核心网是通信网络的三大组成部分之一(接入网、承载网、核心网),位于网络子系统内,主要负责管理数据,对数据进行分拣,并指示数据应该去往哪里。(核心网一般是有线网络,网络节点不具备自主移动性。

这种对数据的处理和分发,本质上就是“路由交换”,是核心网的核心功能。

具体关于核心网的定义,感兴趣的小伙伴可以去搜搜别的帖子,本篇不做过多说明。

2 核心网路由协议的分类

核心网的路由协议可以分为如下几类:

图1 核心网路由协议分类

2.1 静态路由

静态路由是指,网络管理员在系统安装时手工配置的,网络结构发生变化后由网络管理员手工修改路由表。

静态路由的优势如下:

  • 无需进行路由交换,节省带宽、CPU利用率和路由器内存

  • 较高安全性,所有连接到网络的路由器都需在邻近路由器上设置相应路由

  • 适用于网络结构简单的小规模网络

静态路由的劣势如下:

  • 拓展性差

  • 不适合网络拓扑动态变化的网络,配置繁琐

2.2 动态路由

动态路由是指,路由器根据路由算法得到数据传输的最佳路径,建立、更新和维护动态路由表。

动态路由协议又可以根据计算原理,分为基于距离矢量(Distance Vector)和基于链路状态(Link State)的协议。

(1)基于距离向量的协议

原理是Bellman-Ford算法,使用跳数/向量确定从一个节点到另一个节点的距离,不考虑每条链路的速率,路由器将部分或全部路由表传递给邻居路由表。

示例:RIP,BGP,IGRP

(2)基于链路状态的协议

原理是Dijkstra算法,没有跳数限制,基于图论知识,路由器将链路状态信息传递给同一区域的所有路由器,只广播改变的网络拓扑信息。

示例:OSPF,IS-IS

3 核心网路由实现

在核心网中,网络节点一般被分割为多个子网或自治系统(Autonomy system, AS)。每个自治系统有16位的AS自治号,由IANA组织管理与分发,公有自治号位1~64511,私有自治号位64512~65535。

基于自治系统,核心网的路由协议又可以分为自治系统内部和自治系统间的协议,即IGP(Interior gateway protocols)和EGP(Exterior gateway protocols)。

IGP是指,单一AS内发现和计算自治系统内的路由信息,包括:RIP,OSPF,IS-IS,EIGRP。

EGP是指,控制AS间路由的传播,进行路径选择,目前仅有BGP协议。

4 常见的几种路由协议

4.1 RIP(Routing Information Protocol)

RIP协议是一种基于距离矢量算法的协议,使用跳数作为度量来衡量到达目的网络的距离,通过UDP报文进行路由信息的交换,使用端口号520。

节点通过发送请求,向邻居获得可用路由信息,以形成自己的路由表。

图2 RIP请求过程
图3 RIP信息交换

为了防止RIP路由在网络中被无限泛洪使得跳数累加到无穷大,同时也为了限制收敛时间,RIP规定度量值取0~15之间的整数,大于或等于16的跳数被定义为无穷大,即目的网络或主机不可达。

由于实现较为简单,在配置和维护方面远比OSPF和IS-IS容易,RIP多用于规模较小的网络,如校园网或结构简单的地区性网络。

路由环路:从邻居处获得可用路由信息这样的方法,存在路由环路的问题。如果设备不具有出发更新的功能,则链路出现中断时,错误的路由信息会被邻居拿走,从而形成环路。

图4 路由环路

SwitchC发现网络故障之后,需要等待更新定时器超时。在等待过程中,如果SwitchB的更新报文传到了SwitchC,SwitchC就会学到SwitchB的去往网络10.4.0.0的错误路由。这样SwitchB和SwitchC上去往网络10.4.0.0的路由都指向对方,从而形成路由环路

毒性反转:RIP从某个接口学到路由后,从原接口发回邻居路由器,并将该路由的开销设置为16(即指明该路由不可达)。利用这种方式,可以清除对方路由表中的无用路由。

图5 毒性反转

4.2 OSPF(Open Shortest Path First)

OSPF协议是一种基于链路状态的路由协议。

步骤1:每台路由器根据自己的网络拓扑结构,生成链路状态通告LSA(Link State Advertisement),并通过更新报文将LSA发送给网络中的其它路由器。

步骤2:每台路由器收集其他路由器发来的LSA,所有LSA放在一起组成了链路状态数据库(Link state database, LSDB),以此来掌握全网的拓扑结构。

LSA是对路由器周围网络拓扑结构的描述,LSDDB则是对整个自治系统的网络拓扑结构的描述。

步骤3:路由器将LSDB转换成一张带权有向图,反映整个网络的真实拓扑结构。在网络拓扑稳定的情况下,各个路由器得到的有向图是完全相同的。

图6 OSPF过程

步骤4:路由器根据最短路径优先(Shortest path first)算法计算得到到达目的网络的路径。每台路由器根据有向图,使用SPF算法计算出一颗以自己为根的最短路径树,这棵树给出自治系统中各节点的路由。

图7 OSPF形成的最短路径树

相对于RIP,OSPF极大地提升了路由器的自主选路能力,使得路由器不再依靠路由通告进行选路。

同时,RIP交互的是路由,路由器的选路依赖于邻居路由器的路由信息,不论路由信息是否正确;OSPF交互的是链路状态信息,路由器的选路是通过SPF算法得到的一种自主行为,LSA只是选路的参考信息。

4.3 IS-IS

IS-IS协议也使用SPF(Shortest path first)算法进行路由计算,收敛速度快,拓展性强,运行在数据链路层,抗攻击能力强,可以实现大规模网络的互通。

IS-IS协议在路由域内采用两级的分层结构,即一个大的Domain(域)可以被分为多个Areas(区域)。一般通过2层路由设备实现路由转发。

图8 IS-IS协议场景

下面给出OSPF和IS-IS协议的性能对比:

OSPF

IS-IS

协议类型

IP层协议

数据链路层协议

协议扩展性

通过扩展LSA type应对新的需求,拓展性一般。比如对IPv6的支持,需要新的OSPFv3

由于本身的TLV的报文结构,决定了其超强的扩展性。比如对IPv6的支持,仅需扩展TLV

适用范围

规模适中,最多可支持几百台设备,中小型企业

规模较大的网络,如大小ISP

路由算法

采用最短路径SPF算法。通过链路状态通告LSA描述网络拓扑,依据网络拓扑生成一棵最短路径树SPT,计算出到网络中所有目的地的最短路径

采用最短路径SPF算法。依据网络拓扑生成一棵最短路径树SPT,计算出到网络中所有目的地的最短路径。

在IS-IS中,SPF算法分别独立的在Level-1和Level-2数据库中运行。

收敛速度

较快,小于1s

较快,小于1s

区域划分

基于接口

基于路由器

4.4 BGP(Border Gateway Protocol)

BGP是一种在自治系统之间交换网络层可达性信息的路由选择协议。其运行方式分为IBGP和EBGP。IBGP是指BGP运行在同一AS内,EBGP是指BGP运行于不同AS之间。

图2 BGP

BGP是通过将节点划分为作为Speaker的控制节点和作为peer的成员节点来实现的。具体实现包含了较为复杂的报文交换和状态机变换,有需要的小伙伴可以去看协议内容。

5 杂记

目前现有的路由协议种类繁多,部署复杂,且拓展性不足。

在作者学习这部分内容的时候,看到很多的一个词汇就是Segment Routing,这也是未来核心网路由的研究重点方向之一,SR有两种实现,分别是基于MPLS和基于IPv6去实现的。

目前市面上还没有应用特别广泛的SR案例。感兴趣的伙伴可以去看看华为或者思科相关专家写的书,如《Segment Routing详解》、《SRv6网络编程:开启IP网络新时代》。

  • 25
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值