互联网协议 — 路由器

范桂飓 2021-08-06

栏目: 精品阅读 ·

来源: 范桂飓

作者:范桂飓

简介  这篇文章主要介绍了互联网协议 — 路由器以及相关的经验技巧,文章约3499字,浏览量404,点赞数2,值得参考!

目录

路由器(Router)

路由器可以连接多个网络。它有多个端口,分别连接不同的 LAN。路由器通过转发三层数据包来实现网络互连。虽然路由器可以支持多种协议(如:TCP/IP、IPX/SPX、AppleTalk 等协议),但是在我国绝大多数路由器都运行着 TCP/IP 协议。

路由器连接着多个不同的网段,连接到同一路由器上的不同网段会被分割成不同的广播域,广播域之间的数据包转发需要路由器来完成。虽然具有 VLAN 功能的交换机也可以分割广播域,但是各广播域之间的通信交流仍然需要借助于路由器。

路由器的基本功能包括两大部分:

  • 路由:决定数据包下一跳的位置,通过路由算法对路由表进行填充和更新。
  • 转发:数据包到达后所采取的动作,根据路由表查找下一跳的位置,然后通过修改数据报文的源 MAC 地址和目的 MAC 地址来完成分发。

路由器根据收到的 IP 数据包中的目的 IP 地址以及路由器内部维护的路由表决定输出端口以及下一跳地址,并且重写数据链路层数据包头实现转发数据包:源 IP 和目标 IP 不发生变化,在网络的每一段传输时,源 MAC 和目标 MAC 发生变化,进行重新封装。

在这里插入图片描述

路由器的体系结构

在这里插入图片描述

路由器的体系结构由 4 个部分组成:

  1. 输入端口。
  2. 输出端口。
  3. 交换结构。
  4. 路由选择处理器。

输入端口

在这里插入图片描述

  • 将一条输入的物理链路与路由器相连接的物理层功能。
  • 需要与位于人链路远端的数据链路层交互的数据链路层功能。
  • 在输入端口还要完成查找功能。

输出端口

在这里插入图片描述

  • 输出端口存储从交换结构接收的分组。
  • 执行必要的链路层和物理层功能在输入链路上传输这些分组。
  • 当一条链路是双向的(即承载两个方向的流量)时,输出端口通常是与该链路的输入端口在同 一线路卡(一个包含一个或多个输入端口的印刷电路,它与交换结构相连)上成对出现的 。

路由选择处理器:路由器的 “路由” 流程。

在这里插入图片描述

  • 执行路由选择协议。
  • 维护路由选择表以及连接的链路状态信息。
  • 为路由器计算转发表。
  • 执行网络管理功能。

在收到数据包时,路由器会进行如下 “路由” 操作:

  1. 首先,从包头部分提取出目的 IP 地址。
  2. 在自己的全局路由表中查找是否有此 IP 的路由信息。若没有,此将此包发往默认路由;若有,则将此包发送到路由表中记录的相应的下一跳处。

交换结构:路由器的 “转发” 流程。

在这里插入图片描述

  • 交换结构将路由器的输入端口与输出端口相连接。
  • 这种交换结构完全包含在路由器中,即它是一个网络路由器中的网络。

一台路由器的输人端口、输出端口和交换结构共同实现了这种转发功能,并且总是用硬件实现的,将这种转发功能总称为路由器转发平面。如果 N 个端口结合在一块线路卡上(因为实践中常常这样做)。数据报处理流水线必须以 N 倍速率运行,这远快过软件实现的速率。

实现方式:转发平面硬件既能够使用厂商向己的硬件设计来实现,也能够使用购买的商用硅芯片,例如:英特尔和 Broadcom 公司所出售的芯片来实现 。

当转发平面以纳秒时间尺度运行时,路由器的控制功能(即:执行路由选择协议、对上线或下线的连接链路进行响应)在毫秒或秒时间尺度上运行 。这些路由器控制平面(Router Control plane)通常用软件实现并在路由选择处理器(通常是传统 CPU)上执行。


以上就是本文的全部内容,希望对大家的学习有所帮助,本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 原文地址:https://is-cloud.blog.csdn.net/article/details/118572136

相关文章

互联网协议 — Segment Routing(分段路由网络)— SR-MPLS

深入浅出图解【计算机网络】 之 【路由选择协议】

HSRP 热备份路由协议(示例代码)

什么是BGP协议(示例代码)

Day3: Python学习笔记之计算机基础——网络片(示例代码)

华为路由器——BGP路由技术详解(示例代码)

HTTP协议

计算机英语(示例代码)