IGP(RIP、OSPF)和EGP(BGP)

0x01 AS(autonomous system,自治系统)

在互联网中,一个自治系统(AS)是一个有权自主地决定在本系统中应采用何种路由协议的小型单位。这个网络单位可以是一个简单的网络也可以是一个由一或多个普通的网络管理员来控制的网络群体,它是一个单独的可管理的网络单元(例如一所大学,一个企业或者一个公司个体)。

一个自治系统将会分配一个全局的唯一的16位号码,有时我们把这个号码叫做自治系统号(ASN)。

0x02 IGP(Interior Gateway Protocol,内部网关协议)

在一个自治系统内部使用的路由选择协议,包括RIP,OSPF等。

2.1 RIP(路由信息协议)

一种分布式的基于距离向量的路由选择协议。最大优点就是简单,开销小。缺点是当网络出现故障时,要经过较长的时间才能将信息传送到所有的路由器,即好消息传播得快,坏消息传播的慢。

2.1.1 原理

协议中,每个路由器都要维护从自己到其他每一个路由器距离纪录(距离向量),距离也称为跳数(与其直接相连的路由器跳数为1,此类计算;另,与其直接相连的主机,跳数为0)。跳数为16时相当于不可达。因此,RIP只适用于小型网络。

RIP不能再两个网络之间同时使用多条路由,其选择一条具有最少路由器的路由。

2.1.2 路由器之间交换信息
  • 仅和相邻路由器交换信息
  • 交换的是本路由器知道的全部信息,即路由表
  • 按固定间隔交换

经过若干次更新后,所有路由器最终会知道所在A中任何一个网络的最短距离和下一跳路由器的地址。

2.1.3 距离向量算法

收到相邻路由器(其地址为 X)的一个 RIP 报文:

(1) 先修改此 RIP
报文中的所有项目:把“下一跳”字段中的地址都改为 X,并把所有的“距离”字段的值加 1。每一项都有三个关键数据:到目的网络N,距离d,下一跳路由器X。

(2) 对修改后的 RIP 报文中的每一个项目,重复以下步骤:

若项目中的目的网络不在路由表中,则把该项目加到路由表中。

否则(在路由表中),若下一跳字段给出的路由器地址是X(同样的),则把收到的项目替换原路由表中的项目。

否则(下一跳不是同样),若收到项目中的距离小于路由表中的距离,则进行更新。

否则,什么也不做。

(3) 若 3 分钟还没有收到相邻路由器的更新路由表,则把此相邻路由器记为不可达路由器,即将距离置为16(距离为16表示不可达)。

(4) 返回。

2.1.4 RIP协议的报文格式

RIP协议使用与俗称的用户数据报进行传送(UDP端口520)。RIP报文作为UDP用户数据报的数据部分封装成UDP数据报。

2.2 OSPF(开放最短路径优先)

“最短路径优先”是使用了Dijkstra提出的最短路径算法SPF。另,OSPF只是一个协议的名字,并不代表其他路由选择协议不是最短路径优先。

OSPF最主要的特点是使用分布式链路状态协议,而不是RIP那样的距离向量协议。

优点是更新过程收敛得快。

2.2.1 原理

OSPF与RIP不同:

  • 向本自治系统中所有路由器发送信息(洪泛法)
  • 发送的信息是与本路由器相邻的所有路由器的链路状态(该路由器和哪些路由器相连,之间度量(费用、距离、时延、带宽等,由网络管理员决定),这只是路由器所知道的部分信息。
  • 只有当链路状态发生变化时,才用洪泛法发送此信息。

由于各路由器间频繁交换链路状态信息,最终所有路由器都能建立一个链路状态数据库(全网的拓扑结构图)。路由器使用这一链路状态数据库,构建出自己的路由表。

2.2.2 划分区域

为了能够用于规模很大的网络,OSPF将一个自治系统再划分为若干个区域。每个区域都有个32位区域标识符。分好区域后洪泛法交换链路信息就只限于一个区域。

2.2.3 OSPF协议的报文格式

OSPF不用UDP而是直接用IP数据报传送。其IP首部的协议字段值为89。

特点:

  • OSPF对于不同类型的业务可计算处不同的路由
  • 如果到达目的网络有多条相同代价的路径,可以将流量分给多条路径,进行多路径间的负载均衡。
  • 所有在OSPF路由器间交换的分组都具有鉴别功能。
  • 支持可变长度的子网划分和五分类的编址CIDR。
  • 每一个链路状态都带一个32位序号,序号越大状态越新

OSPF的五种分组类型:

  • 问候;用来发现和维护邻站可达性。
  • 数据库描述;向邻站给出的自己链路状态数据库中的所有链路状态项的摘要信息
  • 链路状态请求;向对方请求某些链路状态项的详细信息
  • 链路状态更新;用洪泛法对全网更新链路状态
  • 链路状态确认;对链路更新分组的确认

0x03 EGP(External Gateway Protocol)

在自治系统的相邻两个网关主机间交换路由信息的协议。目前使用最多的EGP是BGP的版本4(BGP-4)。

若源主机和目的主机处在不同的AS中(两个系统可能使用不同的IGP),当数据报传到一个AS边界时,即要一种协议将路由选择信息传递到另一个AS中,这样的协议就是EGP。

3.1 BGP(Border Gateway Protocol,边界网关协议)

运行在自制系统间的路由协议,主要作用交换域间路由协议。

力求寻找到一条到达目的网络比较好的路由(不能兜圈子),而并非要寻找到一条最佳路由。采用路径向量路由选择协议。

一个AS一个边界发言人(BGP边界路由器),边界发言人交换路由信息,需要建立TCP连接(端口179),在此连接上交换BGP报文以建立BGP回话。BGP交换的可达性信息就是要达到某个网络需经过的一系列AS。

转载请注明出处

你可能感兴趣的:(网络)