文章目录
路由选择
路由选择(Routing)是网络层的一个关键功能,负责在源和目的地之间选择最佳路径 ,以确保数据包高效地到达目的地。路由选择涉及多个方面,包括路由表的维护 、路由协议的使用 、路径选择算法等。
- 路由表需要对网络拓扑变化的计算最优化
- 转发表的结构应当使查找过程最优化
路由选择是网络层确保数据包高效到达目的地的核心功能 。通过静态 和动态路由,结合不同的路由选择算法和协议,网络能够动态适应拓扑变化,优化路径选择,提高传输效率和可靠性。
在实现路由选择的过程中,合理配置和管理路由表,以及选择合适的路由协议和策略,是确保网络稳定和高效运行的关键。
路由选择的基本概念
-
路由表:每个路由器都有一个路由表,存储关于网络的路径信息,包括目的地网络、下一跳地址、路径开销等。
-
下一跳:数据包需要转发的下一个设备地址,即下一台路由器的IP地址。
-
路径开销:衡量一条路径的成本或距离,通常包括跳数、带宽、延迟等因素。
路由选择算法
路由选择算法决定了路由器如何选择最佳路径,主要分为两类:静态路由和动态路由。
-
静态路由 :采用人工配置的方式给路由器添加网络路由默认路由和特定主机路由等路由条目。一般只在小规模网络中采用。
- 由网络管理员手动配置,适用于小型和固定网络,但不适应动态变化的网络环境。
- 优点:简单、开销低、无额外通信开销。
- 缺点:无法自动适应网络状态(流量、拓扑等)变化,管理复杂。
-
动态路由 :路由器通过路由选择协议自动获取路由信息。适用于大规模网络。
- 路由器自动计算和更新路由信息 ,通过路由协议实现。
- 优点:适应网络变化,自动更新路由表。
- 缺点:复杂度高,有通信开销。
路由选择策略
-
最短路径优先:选择跳数最少的路径。
-
最低开销优先:选择开销最低的路径,开销可以是带宽、延迟等综合因素。
-
负载均衡:将流量分配到多个路径,避免某一条路径过载。
-
策略路由:基于策略的路由选择,如服务质量(QoS)要求、安全需求等。
路由器的工作原理
路由器是一种具有多个输入端口和输出端口的专用计算机 ,其任务是转发分组
路由器的交换结构的速率对于路由器的性能是至关重要的。因此,人们对交换结构进行了大量研究,以提高路由器的转发速率。
通过实现交换结构的三种基本方式是:通过存储器 、通过总线 以及通过互连网络。这三种交换结构可实现的路由器转发速率依次提高。
路由表
路由表存储了网络中的路径信息,包括目的地网络、下一跳地址、出接口等。路由表的条目通常包含以下内容:
- 目的地地址:目标网络或主机的IP地址。
- 子网掩码:用于确定目的地地址的网络部分。
- 下一跳地址:数据包转发的下一台路由器的IP地址。
- 出接口:用于转发数据包的网络接口。
- 度量值:用于选择最佳路径的开销信息,例如跳数、带宽等。
路由表一般仅包含从目的网络到下一跳的映射。路由表需要对网络拓扑变化的计算最优化
静态路由配置
静态路由配置是指用户或网络运维人员使用路由器的相关命令给路由器人工配置路由表。人工配置方式简单、开销小、但不能及时适应网络状态(流量、拓扑等)的变化,一般只在小规模网络中采用。当需要确保特定的数据流量通过预定义的路径传输时,或者在网络中只有少数几个路由器时,使用静态路由是一个简单且有效的方法。
进行静态路由配置需要认真考虑和谨慎操作,否则可能出现以下问题:
- 路由条目配置错误,甚至导致出现路由环路
- 聚合路由条目时可能引入不存在的网络。
默认路由
默认路由(Default Route)是静态路由的一种特殊形式,它是指当路由器查找不到与目标地址相匹配的具体路由条目时,会将数据包转发到这个默认路由指定的下一跳地址。
默认路由通常用于简化路由表,减少路由表的大小,提高查找效率。在很多情况下,特别是在接入互联网的边缘路由器上,设置一条默认路由是非常有用的,因为它可以将所有未知目的地的流量导向上游的 ISP
(Internet Service Provider)路由器。
-
直连路由: R1 的路由表中包含两条直连路由:
- 目的地是
192.168.1.0/24
,下一跳是接口0,类型是"直连"。 - 目的地是
10.0.0.0/30
,下一跳是接口1,类型也是"直连"。
- 目的地是
-
默认路由 : R1 还有一条默认路由,目的地是
0.0.0.0/0
,下一跳是10.0.0.2
,类型是"静态"。这意味着任何没有明确路由条目的数据包都将被转发到10.0.0.2
,也就是 R2 的接口 0。 -
数据包转发过程 : 当 R1 接收到一个目的地不在其直连网络内的数据包时,它会查询自己的路由表。由于没有找到对应的具体路由条目,它就会使用默认路由,将数据包转发到
10.0.0.2
。然后,R2 负责将这些数据包进一步转发到因特网中的相应网络。
默认路由条目中的目的网络为 0.0.0.0/0
,其中 0.0.0.0
表示任意网络 ,而网络前缀 /0
(相应的地址掩码为0.0.0.0)是最短的网络前缀。
路由器在查找转发表转发IP数据报时,遵循"最长前缀匹配 "的原则,因此默认路由条目的匹配优先级最低。
特定主机路由
出于某种安全问题的考虑,同时为了使网络运维人员更方便地控制网络和测试网络,特别是在对网络的连接或路由表进行排错时,指明到某一台主机的特定主机路由是十分有用的。
特定主机路由条目中的目的网络 192.168.2.1/32
,其中 192.168.2.1
是特定主机的IP地址,而网络前缀 /32
(相应地址掩码为255.255.255.255 )是最长的网络前缀。
路由器在查找转发表转发IP数据报时,遵循"最长前缀匹配"的原则,因此特定主机路由条目的匹配优先级最高。