跳转到内容

互联网技术/路由

来自维基教科书,开放的书籍,开放的世界

路由是指数据在网络中从一个主机到另一个主机时所经过的路径。路由是确定路径或其子集的过程。与其他网络架构相比,互联网的一个特点是,每个接收数据包的节点通常会自行确定路径的下一步。


IP 路由决策通常基于网络流量的目标。当一个 IP 数据包从网络上的一个节点发送出去时,它会查询其路由表,以确定将流量发送到哪个下一个跳跃设备,以便它能够到达最终目标。普通家用机器上的路由表可能看起来像这样(除了格式正确 :))

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
x.y.z           *               255.255.255.255 UH    0      0        0 ppp0
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
127.0.0.0       *               255.0.0.0       U     0      0        0 lo
default         x.y.z           0.0.0.0         UG    0      0        0 ppp0

因此,例如,当它在接口 eth0 上接收到一个目的地为 216.239.59.104 的数据包时,它将查询路由表并发现它应该通过默认接口,主机 x.y.z,它位于接口 ppp0 上,发送该数据包。

路由表由静态定义的路由和从动态路由协议学习到的路由组合构建而成。

静态定义的路由可以在系统启动时或通过命令行界面声明。它们通常会包含以下参数

  • 目标 - 这可以是单个主机,也可以是网络(在这种情况下,还需要一个网络掩码)。
  • 网关 - 将流量发送到定义目标的设备。

静态路由也可以包含以下参数

  • 接口 - 流量必须通过该接口发送到目标。(大多数操作系统可以自动确定这一点)
  • 度量 - 网关距离该主机的“跳跃”次数。对于位于直接连接网络上的网关,度量为“1”。

默认路由是静态定义路由的一种特殊情况。它是最后的求助路由。所有不匹配路由表中其他目标的流量都会转发到默认网关。

动态路由协议允许连接到网络的设备从对等设备动态地了解网络结构。这减少了在整个网络中实施和更改路由所需的管理工作。动态路由协议的一些例子是

  • RIP (路由信息协议)
  • OSPF (开放最短路径优先)
  • ISIS (中间系统到中间系统)
  • BGP (边界网关协议)
  • IGRP (内部网关路由协议)

ISIS 和 OSPF 是链路状态协议,这意味着每个属于相同区域的节点都会知道网格中所有链路的状态。由于网格中链路的数量呈指数级增长,因此这些协议适用于小型网格,例如 ISP 的国家骨干网。

RIP 通常用于在骨干网中轻松宣布客户的路由。

BGP 用作外部路由协议,用于与其他实体交换路由。ISP 广泛使用 BGP 来“交易”他们的路由。它也可以用于在网络中传输客户路由,例如在 MPLS 骨干网中。

华夏公益教科书