路由基础学习

一、路由:路由(Routing)指的是将数据包从源地址传输到目的地址的过程。在这个过程中,数据包会经过多个网络设备(如路由器、交换机等),每个设备根据路由表中的信息决定数据包的下一跳路径,最终将数据包送达目的地。

路由是网络通信的基础,确保数据能够在复杂的网络环境中高效、可靠地传输

二、路由协议

1.路由协议(Routing Protocol)是网络中用于动态发现和维护路由信息的通信协议。它允许路由器之间自动交换网络拓扑信息,从而动态计算出到达目的地的最佳路径。用于路由器选择路径和管理路由表;(传输层或者应用层)

2.被路由协议:被路由协议是指那些需要通过路由器进行转发的协议。这些协议定义了数据在网络中的传输方式,而路由器负责根据路由表转发这些协议的数据包。路由器选择了路径后,路由器将路由被路由协议。(网络层)

3.路由器路由的方式:

(1)静态路由(Static Routing),静态路由是由网络管理员手动配置的路由信息,不会自动更新或调整。

优点:配置简单,安全性高,无协议开销,在路由器间没有带宽占用;

缺点:扩展性差,对于大型网络工作量巨大,对于新添网络配置繁琐;

应用场合:小型网络,安全性高。

(2)动态路由(Dynamic Routing),动态路由通过运行路由协议自动发现和维护路由信息。路由器之间会交换网络拓扑信息,并根据算法计算最优路径。

优点:自动适应网络变化,扩展性强,故障恢复快;

缺点:配置和管理复杂,有协议开销,路由震荡风险,需配置安全机制;

应用场景:大型网络,拓补复杂,动态变化;

4.路由器如何进行选路

(1)依赖于路由表(Routing Table)中的信息以及各种路由协议的动态更新。

(2)路由表:路由表是路由器的核心数据结构,用于存储到达不同网络或主机的最佳路径信息。路由表中的每条记录通常包含以下关键信息:

  • 目的网络地址:目标网络或主机的IP地址。

  • 子网掩码:用于确定目标网络的范围。

  • 下一跳地址:数据包到达目标网络的下一个路由器的IP地址。

  • 出接口:数据包离开当前路由器的接口(如 Ethernet0、Serial1 等)。

  • 路由来源:路由信息的来源(如静态配置、动态路由协议等)。

  • 度量值(Metric):用于衡量路径的"成本"或"距离",帮助选择最优路径。

(3)路由选择的基本步骤

路由器在转发数据包时,会按照以下步骤进行选路:

步骤 1:查找路由表,当路由器收到一个数据包时,它首先会检查数据包的目的IP地址,并在路由表中查找匹配的路由条目。

步骤 2:最长前缀匹配(Longest Prefix Match, LPM),路由器会根据目的IP地址和子网掩码进行最长前缀匹配。例如:

  • 如果路由表中有两条记录:

    • 192.168.1.0/24 → 下一跳为 10.0.0.1

    • 192.168.1.0/16 → 下一跳为 10.0.0.2

  • 对于目的地址 192.168.1.100,路由器会选择更具体的 /24 条目,因为它的前缀更长。

步骤 3:选择最优路径,如果存在多条匹配的路由条目,路由器会根据以下规则选择最优路径:

  1. 优先级:优先选择直连路由(Connected),其次是静态路由(Static),最后是动态路由协议(如 OSPF、EIGRP、RIP)。

  2. 度量值(Metric):对于动态路由协议,路由器会比较度量值,选择度量值最小的路径。

  3. 管理距离(Administrative Distance):主要用于不同路由协议之间的可信度(0-255之间,0最信任),用于区分不同路由协议的优先级。例如:

    • 直连路由:管理距离为 0

    • 静态路由:管理距离为 1

    • OSPF:管理距离为 110

    • EIGRP:管理距离为 90

    • RIP:管理距离为 120

步骤 4:转发数据包,一旦选择了最优路径,路由器会将数据包封装到适当的链路层协议(如以太网帧)中,并通过指定的出接口发送到下一跳地址。

5.动态路由协议:

(1)距离矢量(MV)协议:RIP,IGRP

(2)链路状态协议OSPF,IS-IS

6.距离矢量(Distance-Vector)是一种动态路由协议,通过计算到达目标网络的"距离"(通常以跳数或成本衡量)和方向(下一跳地址)来选择最优路径。它是最早出现的动态路由协议之一,广泛应用于小型到中型网络中。

工作原理:

距离矢量协议的核心是贝尔曼-福特算法(Bellman-Ford Algorithm),其工作过程如下:

  1. 初始化路由表:每个路由器初始化自己的路由表,记录到达直接相连网络的距离(通常是1跳)和下一跳地址。

  2. 定期广播路由表:路由器定期向相邻路由器广播自己的路由表,告知其已知的最优路径。

  3. 接收并更新路由表:

    (1)相邻路由器接收广播的路由表后,根据收到的信息更新自己的路由表。(2)如果收到的路径更优(即距离更短),则更新路由表中的相应条目。

  4. 计算最优路径:路由器根据收到的路由信息,使用贝尔曼-福特算法计算到达每个目标网络的最优路径。

  5. 动态调整:当网络拓扑发生变化(如链路故障或新链路加入)时,路由器会根据新的路由信息重新计算最优路径。

相关推荐
liulilittle5 小时前
OPENPPP2 —— IP标准校验和算法深度剖析:从原理到SSE2优化实现
网络·c++·网络协议·tcp/ip·算法·ip·通信
北极光SD-WAN组网7 小时前
从0到1搭建某铝箔智慧工厂网络:5G与WiFi 6助力智能制造
网络·5g·制造
阿昭L7 小时前
HTTP原理
网络·网络协议·http
Hello_Embed7 小时前
STM32HAL 快速入门(十九):UART 编程(二)—— 中断方式实现收发及局限分析
笔记·stm32·单片机·嵌入式硬件·学习
天上的光8 小时前
关于学习的一些感悟
学习
hazy1k8 小时前
STM32H750 RTC介绍及应用
网络·stm32·实时音视频
没书读了8 小时前
考研复习-计算机网络-第三章-数据链路层
网络·计算机网络·考研
red_redemption8 小时前
自由学习记录(95)
学习
on the way 1238 小时前
多线程之HardCodedTarget(type=OssFileClient, name=file, url=http://file)异常
网络·网络协议·http
WhoisXMLAPI9 小时前
WhoisXML API再次荣登2025年美国Inc. 5000快速成长企业榜单
网络·安全