路由选择过程与原理



路由选择是发生在互联网络(如通过路由器连接的独立网络)上的数据分组转发过程,如下图所示。当主机发送数据分组时,它或者是对于同一网络上的本地主机或者是对于远程网络上的主机。如果数据分组没有本地IP网络地址,则主机将它发送到默认路由器,该路由器再将它转发到其他网络。路由选择过程与原理_第1张图片

下图中的网络较为复杂。它包括一个提供多路由路径的相互连接的网络组成的网状网。尽管每个路由器可能有其自己挂接的网络和主机,但为简单起见,仅表示出两个主机。主机A希望将数据分组发送到主机B。这存在多个路径。主机A将数据分组发送到它的本机挂接的路由器并让路由器处理转发。路由选择过程与原理_第2张图片

路由器如何选择路径?它查看借助路由协议创建的路由表。通过查看其路由表,路由器A将发现两条路径。一个是首选路径,另一个在首选路径出故障时使用。管理员可通过设定度量标准来指定首选路径。

路由器的主要工作就是为经过路由器的每个数据帧寻找一条最佳传输路径,并将该数据有效地传送到目的站点。路由器使数据分组到达其目的地的下一跳,而不是到目的地的完整路径。基本IP路由选择称为逐跳或者基于目的地的路由选择。该技术类似于问路,一个人在十字路口为某人指出正确的方向。在下一个十字路口,另一个人为该人指出正确的方向。最终,到达想要去的地方,但不是从一开始就知道准确的路径,而是沿着别人指出的方向前进。某人可能为他人指出一个避开建筑物或死胡同的方向。在庞大的网状网中存在很多可能的路径, 路由器根据路由选择协议(Routing Protocol)提供的功能,自动学习和记忆网络运行情况,在需要时自动计算数据传输的最佳路径,避开拥塞或暂时禁用链路的路径。

基于路由器的网络互联对于构建可伸缩网络是重要的。它促进分级网络结构和网络寻址方案.数据链路层LAN主机大小和数目的限制。路由选择有助于网络超越这些限制而发展。网络设计者可以使用路由选择将多个LAN连接到互联网络中。在因特网上,路由器允许独立管理的自治系统(AS)在保持每个网络的自治性的同时互相连接并交换通信。


路由选择过程

对早因特网上的路由器(最初称为“网关”)的原始要求是,作为一种设备,可以检查输入的数据分组并读取其目的地址,在一个表中查找此地址,然后相应地转发该数据分组。路由器可能需要将数据分组分段以适合基础网络的帧大小。路由器在溢出的情况下可能丢弃数据分组。TCP负责检测和恢复丢弃的数据分组。

最初,查找表由网络管理员手动配置,该过程称为静态路由选择。也就是说,该路由是预先设定的,而且不是由“路由信息协议”(RIP)发现的。利用静态路由选择功能,您可以为某个IP地址或网络指派网关。在内部网络上,如果某些路由器无法以RIP1或2运行,那么您可以为这些路由器设定静态路由。静态路由选择适合于小型网络和某些专用链路,但对于大型网络,则要求动态路由选择。当链路失效或者重新配置链路度量标准时,网络拓扑结构会随时更改。动态路由协议必须发现这些更改并更新路由表。

互联网络路由选择过程如图R-5所示。为简单起见,网络的数字IP地址主机和路由器用缩写代替。路由选择过程与原理_第3张图片

图R-5 穿越混合网络的IP数据分组

1.在源(Al)处,数据报与目的主机(C1)的IP地址一起创建。

2.由于目网络地址与当前网络地址不同,所以主机Al将数据报直接传送给默网关路由器A/B。注意,数据报被放置到具有路由器A/B的MAC地址的一个或多个帧中。

3.帧到达路由器A/B的端口A。数据报被提取出来,并检查IP地址。路由器确定可以通过路由器B汇到达目的地,于是它将数据报放置到与网络B匹配的帧类型中,并附上路由器B/C的MAC地址。

4.在路由器B/C处,帧到达端口B。数据报被提取出来,并检查IP地址。路由器确定该主机被挂接到子网C,于是它查找路由表或者使用ARP将伊地址解析成MAC地址。然后,路由器将数据报置于帧中,附上目标C1的MAC地址,并在网络上传输帧。

主机C 1在网络上看到定址到它的帧,并接收该帧。

若要传送大型文件,将文件分成若干部分,置于许多数据分组中。然后,如果丢失一个数据分组,则只需要重新传输该数据分组,而不必重传整个文件。这种可靠性功能由TCP在后台进行处理。


路由选择环境

基本路由选择概念是自治系统,如图R-6所示。因特网是以各个服务提供商和电信公司网络形式存在的自治系统的集合,这些网络通过路由器、路由协议和路由策略相互连接起来。每个自治系统由它自己的机构管理并实现其内部的路由选择。一个自治系统基本上是一个路由选择域。在一个域内使用相同的内部路由协议算法。OSPF是最常用的内部路由协议。自治系统之间的路由选择称为外部路由选择。BGP是因特网的外部路由协议。内部路由选择有时称为“域内路由选择”,外部路由选择有时称为“域间路由选择”。

路由选择过程与原理_第4张图片

图R-6 自治系统、内部系统和外部系统

通过边界路由器可以与外部连接,边界路由器提供到外界的网关。边界路由器还提供关于其所有内部路由到属于其他AS的边界路由器的“可达性”信息,该信息很简洁,并且常常是包含一个单个路由表项(用于外部路由器),该项代表在边界路由器另一侧的所有内部网络。连续网络地址范围可能由单个(较大)的网络地址表示。该方案大大减少了必须在因特网上存储和转发的路由信息量。

因特网由包含本地、区域和主干服务提供商的许多自治系统组成。


路由协议与算法

动态路由协议自动发现网络上的路由并构建路由表。路由器在转发数据分组时引用该表。如上所述,有内部和外部路由协议。

现在使用的主要内部路由协议是RIP(路由信息协议)和OSPF(开放式最短路径优先)。RIP确保在相邻路由器间正在进行的通信能够被维持。因此,它为第1个邻居维护了一张重传表。该表指示还没有被邻居确认的数据包。未确认的可靠数据包最多可以被重传1 6次或直到保持时间超时,以它们当中

时间更长的那个为限。OSPF是一个内部网关协议,用于属于单个自治体系(AS)的路由器之间的路由选择。OSPF 采用链路状态技术,路由器互相发送直接相连的链路信息和它所拥有的到其它路由器的链路信息。现在OSPF在大型网络因特网服务提供商网络上是最重要的,但RIP对于小型专用网络仍很普遍。 在自治系统间交换路由信息的主要外部路由协议是BGP(边界网关协议)。

动态路由协议针对网络拓扑的变化进行调整,它们以路由器间交换的更新信息来表示。如果挂接到路由器的链路出错或者拥塞,则运行在该路由器中的路由协议确保其他路由器知道此变化。然后,它运行路由算法重新计算网络上的路由并更新路由表。

路由器在路由表中存储有关网络的信息。这些表包含每个巳知网络的项以及对通向该网络的接口的引用。路径中的下一个路由器根据在已创建的路由表中发现的信息作出类似的路由决定。注意,每个路由器具有不同的路由表项,因为每个网络的可达性根据其在网络中的位置不同而不同。

“路由摆动”指的是路由可用性的频繁变化。当路由变化时,某些路由器可能无法获得新的路由信息,并且继续将数据分组转发到以前的错误路由(通常称为“黑洞”)中。

数年来,已经开发了一些路由协议。这些协议包括距离-向量路由协议和链接状态路由协议,后者是现今大型互联网络的首选协议。

• 距离-向量路由选择 距离-向量路由协议将路由决定建立在距离(跳数)和向量(方向)基础上。该协议就路径的远近判断其是否最佳。距离可以是中转的站点(路由或是主机)的数目或是一套经过计算能够代替距离的量度。如今仍在使用中的 IP 距离向量路由选择协议有:路由信息协议(RIVv1和v2)和内部网关路由协议IGRP(由 Cisco公司开发)。Bellman-Ford算法用于在每个路由器接收到来自邻居路由器的有关可用路由的信息后计算路由。

• 链接状态路由选择 链接状态路由选择提供一种构建描述更为精确的互联网路由的拓扑数据库的方法。它所进行的工作就是让网络中的路由器告知该网络中其它路由器哪个与它相邻最近。所有的路由器都不会将整张路由表全部发布出去,它们只发布其中与相邻路由器相关的部分。这些协议更适于大型网络,现在是大多数组织和因特网服务提供商的首选路由选择方法。Dijkstra算法用于计算路由。

VRRP(虚拟路由器冗余协议)在出现路由器故障的情况下提供不中断的变更路由。它依赖于静态配置的冗余路由器。VRRP 协议保证访问一些资源不会中断,即通过多台路由器组成一个网关集合。如果其中一台路由器出现故障,会自动启用另外一台。两个或多个路由器建立起一个动态的虚拟集合,每一个路由器都可以参与处理数据,这个集合最大不能超过255个虚拟路由器。

在ATM上的IP环境中处理一些其他路由技术,其中ATM网络为IP网络提供数据链路层。在该环境中,需要可以发现在ATM网络边缘的路由器之间通过ATM网络的路由的方法。切入路由选择(有时称为“快捷路由选择”)是以通过ATM交换结构的虚电路在端系统之间创建切入路由的方法。前几个数据分组首先进行路由选择,但是如果检测到一个很长的流,则数据源获得目的地的ATM地址,然后数据源建立通过ATM结构直接到目的地的虚拟连接,交换所有后续数据分组并避开路由器。

MPLS(多协议标记交换)是在IP网络间传送QoS和业务流量工程设计的最新解决方案。它提供显式路由选择和基于约束的路由选择。显示路由具有交换环境中的虚电路特性。对传统逐跳路由选择的另一替代方案是显式路由选择。在发送数据分组之前,通过网络在两点之间创建路径。数据分组被附上路径标记并通过网络进行交换。

基于约束的路由选择使此概念更进一步,它定义智能路由软件如何收集有关网络负载、带宽特性和抖动/延迟特性的信息。然后,根据不同的约束选择路径。管理员可能仅希望平衡通过网络的负载,确保当一个链路过度使用时另一个链路也充分使用。同时还可能选择路径,因为它提供足够的带宽来传送特定流。这超出使用度量标准来设计路由的概念。相反地,高级路由软件基于当前网络环境动态地选择路由。 


你可能感兴趣的:(【网络安全】网络基础,路由器,网络安全,网络,路由选择)