当前位置: 首页 > news >正文

路由器的结构以及工作原理

目录

路由器的结构

交换结构三种常用的交换方式

1.通过存储器

2.通过总线

3.通过纵横交换结构(crossbar switch fabric)


路由器的结构

路由器结构可划分为两大部分:路由选择部分,分组转发部分

路由选择部分也叫做控制部分,其核心构件是路由选择处理机。路由选择处理机的任务是根据所选定的路由选择协议构造出路由表,同时经常或定期地和相邻路由器交换路由信息而不断地更新和维护路由表。

分组转发部分,它由三部分组成: 交换结构、一组输入端口和一组输出端口(请注意:这里的端口就是硬件接口)。

交换结构(switching fabric)又称为交换组织,它的作用就是根据转发表(forwarding table)对分组进行处理,将某个输入端口进入的分组从一个合适的输出端口转发出去。交换结构本身就是一种网络,但这种网络完全包含在路由器之中,因此交换结构可看成是“在路由器中的网络”。

注:“转发”和”路由选择“的区别

转发:

•根据转发表将用户的IP 数据报从合适的端口转发出去。
仅涉及到一个路由器。
•转发表是从路由表得出的。
•转发表必须包含完成转发功能所必需的信息,每一行必须包含从要到达的目的网络到输出端口和某些 MAC 地址信息(如下一跳的以太网地址)的映射。

路由选择:

•按照路由选择算法,根据网络拓扑的变化情况,动态地改变所选择的路由,并由此构造出整个的路由表。
•涉及到很多路由器。
•路由表一般仅包含从目的网络到下一跳 (用 IP 地址表示)的映射。

输入端口对线路上收到的分组的处理

•在物理层进行比特的接收

•在数据链路层剥去帧的首部和尾部

•分组接着被送入网络层的处理模块:

(1)若收到的分组时交换路由信息的分组,就交到路由选择处理机。

(2)若收到的是数据分组,就按目的地址查找转发表,根据得出的结果,经交换结构到达合适的输出端口。

若某分组正在查找转发表,该分组排队等待。因而会产生一定的时延,如下图所示:

输入端口中的查找和转发功能在路由器的交换功能中是最重要的。为了使交换功能分散化,往往把复制的转发表放在每一个输入端口中(如图中的虚线箭头所示)。路由选择处理机负责对各转发表的副本进行更新。这些副本常称为“影子副本” (shadow copy)。分散化交换可以避免在路由器中的某一点上出现瓶颈。

输出端口将交换结构传送来的分组发送到线路

•输出端口从交换结构接收分组:

(1)当交换结构传送的分组的速率超过输出链路的发送速率,来不及发送的分组就必须缓存在队列中。

(2)若分组处理的速率赶不上分组进入队列的速率,队列满时,丢弃后面进入的分组。

•分组进入数据链路层后,给分组加上链路层的首部和尾部。

•接着传入物理层,由物理层向输出线路发送分组。

交换结构三种常用的交换方式

1.通过存储器

(1)当路由器的某个输入端口收到一个分组时,就用中断方式通知路由选择处理机。然后分组就从输入端口复制到存储器中。

(2)路由器处理机从分组首部提取目的地址,查找路由表,再将分组复制到合适的输出端口的缓存中。

(3)若存储器的带宽(读或写)为每秒 M 分组,那么路由器的交换速率(即分组从输入端口传送到输出端口的速率)一定小于 M/2。这是因为存储器对分组的读和写需要花费的时间是同一个数量级。

许多现代的路由器也通过存储器进行交换,上图表示分组通过存储器进行交换。与早期的路由器的区别就是,目的地址的查找和分组在存储器中的缓存都是在输入端口中进行的。 Cisco 公司的 Catalyst 8500 系列交换机(有的公司把路由器也称为交换机)和 Bay Network 公司的 Accelar 1200 系列路由器就采用了共享存储器的方法。

2.通过总线

(1)数据报从输入端口通过共享的总线直接传送到合适的输出端口,而不需要路由选择处理机的干预。

(2)当分组到达输入端口时若发现总线忙,则被阻塞而不能通过交换结构,并在输入端口排队等待

(3)因为每一个要转发的分组都要通过这一条总线,因此路由器的转发带宽就受总线速率的限制。

现代的技术已经可以将总线的带宽提高到每秒吉比特的速率,因此许多的路由器产品都采用这种通过总线的交换方式。例如, Cisco 公司的 Catalyst 1900 系列交换机就使用了带宽达到 1 Gbit/s 的总线(叫做 Packet Exchange Bus)。

3.通过纵横交换结构(crossbar switch fabric)

也常被称为互连网络(interconnection network)

(1)它有 2N 条总线,控制交叉节点可以使 N 个输入端和 N 个输出端口相连接,这取决于相应的交叉结点是使水平总线和垂直总线接通还是断开。

(2)当输入端口收到一个分组时,就将它发送到水平总线上。

(3)

若通向输出端口的垂直总线空闲,则将垂直总线与水平总线接通,然后将该分组转发到这个输出端口。

但若该垂直总线已被占用(有另一个分组正在转发到同一个输出端口),则后到达的分组就被阻塞,必须在输入端口排队。采用这种交换方式的路由器例子是 Cisco 公司的12000 系列交换路由器,它使用的互连网络的带宽达 60 Gbit/s。

特点:一种无阻塞的交换结构,分组可以转发到任何一个输出端口,只要这个输出端口没有被别的分组占用。

相关文章:

路由器的结构以及工作原理

目录 路由器的结构 交换结构三种常用的交换方式 1.通过存储器 2.通过总线 3.通过纵横交换结构(crossbar switch fabric) 路由器的结构 路由器结构可划分为两大部分:路由选择部分,分组转发部分 路由选择部分也叫做控制部分&…...

DefaultListableBeanFactory

DefaultListableBeanFactory 是一个完整的、功能成熟的 IoC 容器,如果你的需求很简单,甚至可以直接使用 DefaultListableBeanFactory,如果你的需求比较复杂,那么通过扩展 DefaultListableBeanFactory 的功能也可以达到&#xff0c…...

NSF服务器

目录 1.简介 1.1 NFS背景介绍 1.2 生产应用场景 2.NFS工作原理 2.1 实例图 2.2 流程 3.NFS的使用 3.1.安装 3.2.配置文件 3.3.主配置文件分析 3.4 实验 服务端: 客户端: 3.5.NFS账户映射 3.5.1.实验2 3.5.2.实验3 4.autofs自动挂载服务…...

10 Go的映射

概述 在上一节的内容中,我们介绍了Go的结构体,包括:定义结构体、声明结构体变量、使用结构体、结构体关联函数、new、组合等。在本节中,我们将介绍Go的映射。Go语言中的映射(Map)是一种无序的键值对集合&am…...

瑞萨e2studio(29)----SPI速率解析

瑞萨e2studio.29--SPI速率解析 概述视频教学时钟配置解析RA4M2的BRR值时钟速率7.5M下寄存器值3K下寄存器值 概述 在嵌入式系统的设计中,串行外设接口(SPI)的通信速率是一个关键参数,它直接影响到系统的性能和稳定性。瑞萨电子的…...

mysql的主从复制,读写分离

主从复制:主mysql的数据,新增,修改,表里的数据都会同步到从mysql上 主从复制的模式: 1 异步复制 mysql 的最常用的复制,只要执行完,客户端提交事务,主mysql 会立即把结果返回给从…...

小米路由器4A千兆版刷入OpenWRT并远程访问

小米路由器4A千兆版刷入OpenWRT并远程访问 文章目录 小米路由器4A千兆版刷入OpenWRT并远程访问前言1. 安装Python和需要的库2. 使用 OpenWRTInvasion 破解路由器3. 备份当前分区并刷入新的Breed4. 安装cpolar内网穿透4.1 注册账号4.2 下载cpolar客户端4.3 登录cpolar web ui管理…...

【golang】探索for-range遍历实现原理(slice、map、channel)

for-range for-range其实是正常for循环的一种语法糖,在go语言中可以遍历arr,slice,map和channel等数据结构,但是在一些初学者使用for-range可能会遇见很多坑,这篇文章会带你探索一下for-range中非常有趣的一些实现机制…...

依赖倒转原则接口隔离原则迪米特法则合成复用原则

...

MATLAB | 官方举办的动图绘制大赛 | 第一周赛情回顾

嘿真的又是很久没见了,最近确实有点非常很特别小忙,今天带来一下MATHWORKS官方举办的迷你黑客大赛第三期(MATLAB Flipbook Mini Hack)的最新进展!!目前比赛已经刚好进行了一周,前两届都要求提交280个字符内的代码来生成…...

适配器模式 rust和java的实现

文章目录 适配器模式介绍何时使用应用实例优点缺点使用场景 实现java实现rust 实现 rust代码仓库 适配器模式 适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能…...

竞赛 题目:垃圾邮件(短信)分类 算法实现 机器学习 深度学习 开题

文章目录 1 前言2 垃圾短信/邮件 分类算法 原理2.1 常用的分类器 - 贝叶斯分类器 3 数据集介绍4 数据预处理5 特征提取6 训练分类器7 综合测试结果8 其他模型方法9 最后 1 前言 🔥 优质竞赛项目系列,今天要分享的是 基于机器学习的垃圾邮件分类 该项目…...

wpf devexpress项目中添加GridControl绑定数据

本教程讲解了如何添加GridControl到wpf项目中并且绑定数据 原文地址Lesson 1 - Add a GridControl to a Project and Bind it to Data | WPF Controls | DevExpress Documentation 1、使用 DevExpress Template Gallery创建一个新的空白mvvm应用程序,这个项目包括了…...

2023亚太杯数学建模A题思路解析

文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 建模常见问题类型3.1 分类问题3.2 优化问题3.3 预测问题3.4 评价问题 4 建模资料5 最后 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 1 竞赛信息 2023年第十三…...

Spark3.0中的AOE、DPP和Hint增强

1 Spark3.0 AQE Spark 在 3.0 版本推出了 AQE(Adaptive Query Execution),即自适应查询执行。AQE 是 Spark SQL 的一种动态优化机制,在运行时,每当 Shuffle Map 阶段执行完毕,AQE 都会结合这个阶段的统计信…...

算法笔记-第五章-质因子分解

算法笔记-第五章-质因子分解 小试牛刀质因子2的个数丑数 质因子分解最小最大质因子约数个数 小试牛刀 质因子2的个数 #include<cstdio> int main() {int n; scanf_s("%d", &n); int count 0; while (n % 2 0) {count; n / 2; }printf("%…...

适用于WPF的设计模式

适用于WPF的设计模式 讨论“XAML能不能写逻辑代码”这个问题。我发现这是个有歧义的问题。这个问题可以有两种意思&#xff1a; XAML能不能用来写逻辑代码&#xff1f; XAML文件里能不能包含逻辑代码&#xff1f; 对于第一种意思——XAML是一种声明性语言&#xff0c;就是用来…...

C++与多态

多态的本质是允许对象以其实际类型的行为方式来操作&#xff0c;而不仅仅是其静态类型所声明的方式。 多态是面向对象编程中的一种核心概念&#xff0c;它允许对象根据其具体类型执行相应的操作&#xff0c;而不是其声明的类型。我们可以使用一个经典的动物的例子来说明这一点。…...

ios 对话框UIAlertController放 tableview

//强弱引用 #define kWeakSelf(type)__weak typeof(type)weak##type type; -(void) showUIAlertTable {kWeakSelf(self)UIAlertController *alert [UIAlertController alertControllerWithTitle:NSLocalizedString("select_stu", nil) message:nil prefer…...

警告:新版Outlook会向微软发送密码、邮件和其他数据

新的免费Outlook会将敏感数据发送给 Microsoft。 在没有通知或询问的情况下&#xff0c;Microsoft 授予自己对新 Outlook 用户的 IMAP 和 SMTP 访问数据的完全访问权限。也就是说&#xff0c;当用户设置 IMAP 帐户时&#xff0c;新的 Outlook 会将访问数据和服务器信息发送给 …...

论文降重降AI难?自带双功能黑科技的实用工具盘点

论文降重和消除AI生成痕迹是很多创作者面临的双重难题&#xff0c;选对工具能节省大量时间精力。下面整理了几款自带降AIGC率功能的实用工具&#xff0c;覆盖中文、英文、应急、轻量优化等不同使用场景&#xff0c;附实际使用效果与核心特点&#xff0c;帮你快速找到适配需求的…...

HR整理面试录像超头疼?2026年这3款提取视频文本神器,自动转写最少省4小时手动录入时间

前阵子帮做互联网公司HR的死党搭手整理春招面试录像&#xff0c;37场单面加8场群面&#xff0c;我熬了两个大夜试遍了市面上主流的5款视频转文本工具&#xff0c;直接给结论&#xff1a; 听脑AI是同类工具中最值得用的&#xff0c;适配HR面试整理场景的能力直接拉满&#xff0…...

计算机春考-系统管理与服务器配置-01安装Windows Server 2012 R2操作系统

活动1 创建虚拟机1. 单击VMware 主界面中的【创建新的虚拟机】2. 进入【新建虚拟机向导】界面&#xff0c;选中【典型&#xff08;推荐&#xff09;】按钮设置配置类型&#xff0c;点击【下一步】3. 在安装客户机操作系统界面选择【稍后安装操作系统】&#xff0c;单击【下一步…...

零基础友好:跟着快马生成的交互式脚本轻松完成openclaw安装入门

作为一个刚接触编程的新手&#xff0c;第一次安装openclaw这样的工具时&#xff0c;面对复杂的命令行操作和可能出现的各种错误&#xff0c;确实容易感到手足无措。最近我在InsCode(快马)平台上发现了一个特别适合新手的交互式安装教程项目&#xff0c;它把整个安装过程变成了一…...

终极指南:如何使用dnstwist与模糊哈希精准识别钓鱼网站攻击

终极指南&#xff1a;如何使用dnstwist与模糊哈希精准识别钓鱼网站攻击 【免费下载链接】dnstwist Domain name permutation engine for detecting homograph phishing attacks, typo squatting, and brand impersonation 项目地址: https://gitcode.com/gh_mirrors/dn/dnstw…...

Flow错误处理与监控:集成Sentry实现生产级错误追踪

Flow错误处理与监控&#xff1a;集成Sentry实现生产级错误追踪 【免费下载链接】flow Browser-based ePub reader 项目地址: https://gitcode.com/gh_mirrors/flo/flow Flow作为一款基于浏览器的ePub阅读器&#xff0c;为用户提供流畅的电子书阅读体验。在开发过程中&am…...

高可用外卖返利 CPS 平台:Java 后端异步回调处理机制深度解析

高可用外卖返利 CPS 平台&#xff1a;Java 后端异步回调处理机制深度解析 在构建外卖返利&#xff08;CPS&#xff09;系统时&#xff0c;异步回调&#xff08;Callback&#xff09;机制是连接用户授权、订单同步与佣金结算的神经中枢。美团、饿了么等平台的用户授权与订单状态…...

八大网盘直链提取终极指南:突破客户端限制的JavaScript神器

八大网盘直链提取终极指南&#xff1a;突破客户端限制的JavaScript神器 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 &#xff0c;支持 百度网盘 / 阿里云盘 / 中国移动云盘 /…...

Source Han Serif CN全解析:免费商用字体的7大维度深度指南

Source Han Serif CN全解析&#xff1a;免费商用字体的7大维度深度指南 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 一、问题&#xff1a;中文字体应用的三大行业困境 如何突破中文…...

储能变流器双向软开关设计:从拓扑选型到控制策略的工程实现

一、储能PCS的技术挑战与设计目标1.1 储能系统的核心需求储能变流器&#xff08;PCS&#xff09;是实现电池与电网之间能量双向流动的关键设备&#xff0c;在充电模式下将电网交流电转换为直流电为电池充电&#xff0c;在放电模式下将电池直流电转换为交流电馈入电网或供给负载…...