概述
AS内部路由选择协议又称为内部网关协议。被广泛使用的有两个RIP,OSPF。
RIP(Routing Information Protocol,路由选择信息协议)
一种距离向量协议,其运行方式很像理想化的DV协议。
使用跳数作为其费用测度,即每条链路的费用为1。
跳:从源路由器到目的子网的最短路径所经过子网数量。最大费用被限制为15。
路由选择表:
表头包含目的子网、下一台路由器、跳数。
在RIP中,路由选择更新信息在邻居之间通过使用一种RIP响应报文来交换,大约每30秒相互交换一次。由一台路由器或主机发出的响应报文包含了一个该AS内的多达25个目的子网的列表,以及发送方到其中每个子网的距离。又被称为RIP通告。
经过若干次更新后,所有的路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。
具体更新算法:
收到一个相邻路由器(其地址为X)的一个RIP报文:
1)先修改此RIP报文中的所有项目:将下一台路由器字段中的地址改为X,并将所有跳数+1。
2)对修改后的RIP报文中的每一个项目,重复下面步骤:
if(项目中的目的网络不在路由表中){
将该项目加到路由表中
}
else{
if(若下一跳字段给出的路由器地址是同样的){
将收到的项目替换原路由表中的项目
}
else{
if(收到项目中的距离小于路由表的距离){
进行更新
}
else{
什么也不做
}
}
}
例题
路由D中的转发表如下:
收到来自B的RIP通告:
给出路由器D更新后的转发表:
解:
①修改RIP报文,加一项目的子网均为B,距离均+1。
首先目的子网z不在D转发表中,所以需要加入z B 4。
对于y B 8,目的子网在,且下一跳路由器一样,则更新y B 7为y B 8。
对于x B 5,目的子网在,下一跳路由器不一样,且距离更小,则更新x F 8为x B 5。
对于h B 8,目的子网在,下一跳路由器不一样,但距离不小,所以不变。
最后结果为:
目的子网 | 下一跳路由器 | 距离 |
w | A | 2 |
y | B | 8 |
x | B | 5 |
h | E | 5 |
z | B | 4 |
RIP表处理
RIP选路表由称为route-d(守护进程)的应用级进程管理。
通告在UDP分组中发送,周期地重复。
RIP是一个运行在UDP上的应用层协议。
RIP协议优缺点
优点:实现简单,开销较小。
缺点:
①限制了网络的规模,它能使用的最大距离为15(16表示不可达)
②路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增加。
③当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器(坏消息传得慢)。
OSPF(Open Shortest Path First,开放最短路径优先)
是目前内部网关协议中应用最广、性能好的协议。
核心是一个使用洪泛链路状态信息的链路状态协议和一个Dijikstra最低费用路径算法。
可适应大规模的网络层次OSPF。
路由变化收敛速度快。
支持路由等级划分、支持组播、支持验证、支持(多路径)等值路由。
协议工作
每个路由器通过“HELLO”与邻居节点形成和维持邻居关系。
路由器节点在与邻居的交互中掌握了本区域网络拓扑,使用Dijkstra算法完成本节点的路由计算。
邻居或链路状态发生变化时,将信息通过泛洪法散布到整个区域。(携带在OSPF报文中直接封装在IP中,而不是TCP或UDP)。
层次OSPF
AS由多个区域组成,每个区域运行自己的OSPF路由选择算法。
一个区域内,区域边界路由器为流向区域外的分组提供路由选择。
一个AS有一个主干区域,包含了区域边界路由器,为AS内其它区域之间提供路由。
两级层次:本地、主干
1)链路状态通告仅在本地
2)本地每个结点具有详细的区域拓扑;主干仅知道到其他区域网络的方向(最短路)
区域边界路由器:“摘要”到在自己区域网络的距离,向其他区域边界路由器通信。
主干路由器:运行OSPF选路限制到主干。
边界路由器:连接到其他AS。
BGP(Border Gateway Protocol,边界网关协议)
也可叫为AS间路由协议。
为每个AS提供了进行以下工作的手段:
1)从相邻AS处获得子网可达性信息。
2)向本AS内部的所有路由器传播这些可达性信息。
3)基于可达性信息和AS策略,决定到达子网的“好”路由。
基础
路由器通过TCP连接:BGP会话(iBGP和eBGP)来分发路由信息(子网/子网集合可达信息)
对于每条连接,位于该连接端点的两台路由器成为BGP对等方。(ps:BGP会话不对应者物理链路)
其中跨越两个AS的BGP会话称为外部BGP(eBGP)会话,在同一个人AS中的两台路由器之间的BGP会话称为内部BGP(iBGP)会话。
如上图。
在3a和1c之间有eBGP会话,AS3向AS1发送前缀可达信息(前缀表示一个子网/子网集合)。
1c则能使用iBGP来向AS1中的所有路由器分发这种新前缀可达信息。
1b则能经1b到2a的eBGP会话向AS2重新通告新的可达信息。
当路由器知道了一个新前缀,它将在其转发表中为该前缀创建一个表项。
路径属性
当一台路由器通过BGP会话通告一个前缀时,它在前缀中包括一些BGP属性。
带有属性的前缀被称为一条路由。
两个重要的属性:
AS-PATH:包含了前缀的通告已经通过的那些AS。(用于防止循环通告)
NEXT-HOP:下一条路由器的IP地址。(用于路由器配置转发表)
当一台网关路由器接收到一台路由器通告时,它使用其输入策略来决定是否接收或过滤该路由,是否设置某种属性,如路由器偏好测度。
路径选择
路由器对某些前缀可能学到多于1条路由。路由器必须选择路由。
选择路由:
①最短AS-PATH
②选择NEXT-HOP路由器
③各种过滤(IP地址,接口,属性)
AS内选路和AS间选路有何不同?
策略:
AS间:管理员希望控制它的流量选路的方式,谁能通过它的网络路由。
AS内:单个管理员,因此不需要策略决定。
性能:
AS内:能够关注性能
AS间:策略将比性能更为重要。
最后
以上就是繁荣发夹为你收集整理的互联网中的选路协议(计算机网络)的全部内容,希望文章能够帮你解决互联网中的选路协议(计算机网络)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复